Block-Structured AMR Software Framework
amrex Namespace Reference

Namespaces

 algoim
 
 Amrvis
 
 AsyncOut
 
 BinPolicy
 
 Cuda
 
 detail
 
 disabled
 
 EB2
 
 experimental
 
 Extrapolater
 
 FileSystem
 
 fudetail
 
 Gpu
 
 HostDevice
 
 InSituUtils
 
 Lazy
 
 machine
 
 Math
 
 MFUtil
 General collection of MultiFab utilities.
 
 Morton
 
 NonLocalBC
 
 OpenMP
 
 Order
 
 ParallelAllGather
 
 ParallelAllReduce
 
 ParallelContext
 
 ParallelDescriptor
 Parallel frontend that abstracts functionalities needed to spawn processes and handle communication.
 
 ParallelGather
 
 ParallelReduce
 
 particle_detail
 
 Reduce
 
 Scan
 
 sundials
 
 system
 
 tri_geom_ops
 
 TwoD
 

Classes

class  AllPrint
 Print on all processors of the default communicator. More...
 
class  AllPrintToFile
 Print on all processors of the default communicator. More...
 
class  Amr
 Manage hierarchy of levels for time-dependent AMR computations. More...
 
struct  AmrAssignGrid
 
class  AmrCore
 Provide basic functionalities to set up an AMR hierarchy. More...
 
class  AmrData
 
class  AmrDataAdaptor
 
class  AMRErrorTag
 
struct  AMRErrorTagInfo
 
class  AMReX
 
struct  amrex_iparser
 
struct  amrex_parser
 
struct  AmrInfo
 
class  AmrInSituBridge
 Contains the bridge code for simulations that use amrex::Amr. More...
 
class  AmrLevel
 Virtual base class for managing individual levels. AmrLevel functions both as a container for state data on a level and also manages the advancement of data in time. More...
 
class  AmrMesh
 
class  AmrMeshDataAdaptor
 
class  AmrMeshInSituBridge
 SENSEI bridge for code simulations that use amrex::AmrMesh/Core. More...
 
class  AmrParGDB
 
class  AmrParticleContainer
 
class  AmrParticleLocator
 
class  AmrTracerParticleContainer
 
class  Arena
 A virtual base class for objects that manage their own dynamic memory allocation. More...
 
class  ArenaAllocator
 
struct  ArenaAllocatorTraits
 
struct  ArenaInfo
 
struct  Array1D
 
struct  Array2D
 
struct  Array3D
 
struct  Array4
 
struct  Array4BoxTag
 
struct  Array4BoxValTag
 
struct  Array4CopyTag
 
struct  Array4MaskCopyTag
 
struct  Array4Tag
 
class  ArrayOfStructs
 
struct  AssignGrid
 
class  AsyncArenaAllocator
 
class  BackgroundThread
 
struct  BARef
 
class  BArena
 A Concrete Class for Dynamic Memory Management This is the simplest dynamic memory management class derived from Arena. Makes calls to std::malloc and std::free. More...
 
class  BaseFab
 
class  BaseUmap
 
struct  BATbndryReg
 
struct  BATcoarsenRatio
 
struct  BATindexType
 
struct  BATindexType_coarsenRatio
 
struct  BATnull
 
struct  BATransformer
 
class  BCRec
 Boundary Condition Records. Necessary information and functions for computing boundary conditions. More...
 
struct  BinIterator
 
struct  BLBackTrace
 
class  BLBTer
 
struct  BlockMutex
 
class  BLProfiler
 
class  BndryData
 A BndryData contains a BndryRegister about each side of each grid in a Boxarray. These data are used to store information along the outer layer of each grid (at the same level of coarseness), such as the value of boundary conditions there. Also, for each boundary, this class maintains a BoundCond identifier and a location. This "location" often specifies where, in physical space, a value, which is stored in the boundary registers, will be applied by a solver (although interpretation of this information is application-specific). More...
 
class  BndryFuncArray
 This version calls function working on array. More...
 
class  BndryRegister
 A BndryRegister organizes FabSets bounding each grid in a BoxArray. A FabSet is maintained for each boundary orientation, as well as the BoxArray domain of definition. More...
 
class  BoundCond
 Maintain an identifier for boundary condition types. More...
 
class  Box
 A Rectangular Domain on an Integer Lattice. More...
 
class  BoxArray
 
class  BoxCommHelper
 
class  BoxConverter
 
class  BoxDomain
 A List of Disjoint Boxes. A BoxDomain is a BoxList with the restriction that Boxes in the list are disjoint. More...
 
class  BoxIterator
 iterates through the IntVects of a Box More...
 
class  BoxList
 A class for managing a List of Boxes that share a common IndexType. This class implements operations for sets of Boxes. This is a concrete class, not a polymorphic one. More...
 
class  CArena
 A Concrete Class for Dynamic Memory Management using first fit. This is a coalescing memory manager. It allocates (possibly) large chunks of heap space and apportions it out as requested. It merges together neighboring chunks on each free(). More...
 
class  CellBilinear
 Bilinear interpolation on cell centered data. More...
 
class  CellConservativeLinear
 Linear conservative interpolation on cell centered data. More...
 
class  CellConservativeProtected
 Lin. cons. interp. on cc data with protection against under/over-shoots. More...
 
class  CellConservativeQuartic
 Conservative quartic interpolation on cell averaged data. More...
 
class  CellQuadratic
 Quadratic interpolation on cell centered data. More...
 
class  Cluster
 A cluster of tagged cells. More...
 
class  ClusterList
 A list of Cluster objects. More...
 
struct  Conjunction
 Logical traits let us combine multiple type requirements in one enable_if_t clause. More...
 
struct  Conjunction< B1 >
 
struct  Conjunction< B1, Bn... >
 
struct  ConstParticleCPUWrapper
 
struct  ConstParticleIDWrapper
 
struct  ConstParticleTileData
 
class  CoordSys
 Coordinate System. More...
 
class  CpuBndryFuncFab
 This cpu version calls function working on FArrayBox. More...
 
class  CutFab
 
class  DArena
 
struct  DataAllocator
 
struct  DataDeleter
 
struct  DataLayoutPolicy
 
struct  DataLayoutPolicy< ContainerType, ParticleType< Types... >, DataLayout::AoS >
 
struct  DataLayoutPolicy< ContainerType, ParticleType< Types... >, DataLayout::SoA >
 
struct  DataLayoutPolicyRaw
 
struct  DataLayoutPolicyRaw< ParticleType< Types... >, DataLayout::AoS >
 
struct  DataLayoutPolicyRaw< ParticleType< Types... >, DataLayout::SoA >
 
class  DataServices
 
class  DefaultFabFactory
 
struct  DefinitelyNotHostRunnable
 
struct  DefinitelyNotHostRunnable< T, std::enable_if_t< __nv_is_extended_device_lambda_closure_type(T)> >
 
struct  DenseBinIteratorFactory
 
class  DenseBins
 A container for storing items in a set of bins. More...
 
class  DeriveList
 A list of DeriveRecs. More...
 
class  DeriveRec
 Derived Type Record. More...
 
class  DescriptorList
 
struct  DestComp
 
class  DeviceArenaAllocator
 
struct  Dim3
 
struct  Disjunction
 
struct  Disjunction< B1 >
 
struct  Disjunction< B1, Bn... >
 
class  distFcnElement2d
 
class  DistributionMapping
 Calculates the distribution of FABs to MPI processes. More...
 
struct  DynamicTiling
 
class  EArena
 A Concrete Class for Dynamic Memory Management using best fit. This is a coalescing memory manager. It allocates (possibly) large chunks of heap space and apportions it out as requested. It merges together neighboring chunks on each free(). More...
 
class  EBCellConservativeLinear
 
class  EBCellFlag
 
class  EBCellFlagFab
 
class  EBDataCollection
 
class  EBFArrayBox
 
class  EBFArrayBoxFactory
 
class  EBFluxRegister
 
class  EBMFCellConsLinInterp
 
class  EBToPVD
 
class  ErrorList
 A List of ErrorRecs. More...
 
class  ErrorRec
 Error Record. More...
 
class  expect
 
class  FabArray
 
class  FabArrayBase
 
class  FabArrayCopyDescriptor
 This class orchestrates filling a destination fab of size destFabBox from fabarray on the local processor (myProc). More...
 
class  FabArrayId
 
struct  FabCopyDescriptor
 
class  FabFactory
 
struct  FabInfo
 
class  FABio
 A Class Facilitating I/O for Fabs. More...
 
class  FABio_8bit
 
class  FABio_ascii
 
class  FABio_binary
 
class  FabSet
 A FabSet is a group of FArrayBox's. The grouping is designed specifically to represent regions along the boundary of Box's, and are used to implement boundary conditions to discretized partial differential equations. More...
 
class  FabSetIter
 
class  FaceDivFree
 Divergence-free interpolation on face centered data. More...
 
class  FaceLinear
 Bilinear interpolation on face data. More...
 
class  FArrayBox
 A Fortran Array of REALs. More...
 
struct  FBData
 
struct  FilccCell
 
struct  FilfcFace
 
class  FillBoxId
 
class  FillPatchIterator
 
class  FillPatchIteratorHelper
 
class  FluxRegister
 Flux Register. More...
 
class  ForkJoin
 
class  FPC
 A Collection of Floating-Point Constants Supporting FAB I/O. More...
 
class  Geometry
 Rectangular problem domain geometry. More...
 
struct  GeometryData
 
struct  GetBucket
 
struct  GetParticleBin
 
struct  GetPID
 
struct  GetSendBufferOffset
 
struct  GPUable
 
struct  GpuArray
 
class  GpuBndryFuncFab
 
struct  GpuComplex
 A host / device complex number type, because std::complex doesn't work in device code with Cuda yet. More...
 
class  GpuTuple
 
struct  GpuTupleElement
 
struct  GpuTupleElement< 0, GpuTuple< Head, Tail... > >
 
struct  GpuTupleElement< I, GpuTuple< Head, Tail... > >
 
struct  GpuTupleSize
 
struct  GpuTupleSize< GpuTuple< Ts... > >
 
struct  Greater
 
struct  HasAtomicAdd
 
struct  HasAtomicAdd< double >
 
struct  HasAtomicAdd< float >
 
struct  HasAtomicAdd< int >
 
struct  HasAtomicAdd< long >
 
struct  HasAtomicAdd< unsigned int >
 
struct  HasAtomicAdd< unsigned long long >
 
struct  HasMultiComp
 
class  Hypre
 
class  HypreABecLap
 
class  HypreABecLap2
 
class  HypreABecLap3
 
class  HypreIJIface
 
class  HypreNodeLap
 
class  IArrayBox
 A Fortran Array of ints. More...
 
class  iMultiFab
 
class  IndexType
 Cell-Based or Node-Based Indices. More...
 
class  InSituBridge
 A base class for coupling to the SENSEI in situ library. More...
 
class  IntDescriptor
 
class  InterpBase
 
class  InterpBndryData
 
class  Interpolater
 Virtual base class for interpolaters. More...
 
class  InterpolaterBoxCoarsener
 
class  IntVect
 
class  IParser
 
struct  iparser_assign
 
struct  iparser_f1
 
struct  iparser_f2
 
struct  iparser_f3
 
struct  iparser_node
 
struct  iparser_number
 
union  iparser_nvp
 
struct  iparser_symbol
 
struct  IParserExeADD
 
struct  IParserExeADD_PN
 
struct  IParserExeADD_PP
 
struct  IParserExeADD_VN
 
struct  IParserExeADD_VP
 
struct  IParserExecutor
 
struct  IParserExeDIV_B
 
struct  IParserExeDIV_F
 
struct  IParserExeDIV_NV
 
struct  IParserExeDIV_PN
 
struct  IParserExeDIV_PP
 
struct  IParserExeDIV_PV
 
struct  IParserExeDIV_VN
 
struct  IParserExeDIV_VP
 
struct  IParserExeF1
 
struct  IParserExeF2_B
 
struct  IParserExeF2_F
 
struct  IParserExeIF
 
struct  IParserExeJUMP
 
struct  IParserExeMUL
 
struct  IParserExeMUL_PN
 
struct  IParserExeMUL_PP
 
struct  IParserExeMUL_VN
 
struct  IParserExeMUL_VP
 
struct  IParserExeNEG
 
struct  IParserExeNEG_P
 
struct  IParserExeNull
 
struct  IParserExeNumber
 
struct  IParserExeSUB
 
struct  IParserExeSUB_PN
 
struct  IParserExeSUB_PP
 
struct  IParserExeSUB_VN
 
struct  IParserExeSUB_VP
 
struct  IParserExeSymbol
 
struct  IParserStack
 
struct  IsBaseFab
 
struct  IsBaseFab< D, typename std::enable_if< std::is_base_of< BaseFab< typename D::value_type >, D >::value >::type >
 
struct  IsCallable
 Test if a given type T is callable with arguments of type Args... More...
 
struct  IsCallableR
 Test if a given type T is callable with arguments of type Args... More...
 
struct  IsFabArray
 
struct  IsFabArray< D, typename std::enable_if< std::is_base_of< FabArray< typename D::FABType::value_type >, D >::value >::type >
 
struct  IsMultiFabIterator
 
struct  IsStoreAtomic
 
struct  IsStoreAtomic< EBCellFlag >
 
class  LayoutData
 a one-thingy-per-box distributed object More...
 
struct  Less
 
class  LevelBld
 Builds problem-specific AmrLevels. More...
 
class  LineDistFcnElement2d
 
struct  LogicalAnd
 
struct  LogicalOr
 
struct  LPInfo
 
class  MacBndry
 
class  MacProjector
 
class  ManagedArenaAllocator
 
class  Mask
 
struct  MaybeDeviceRunnable
 
struct  MaybeHostDeviceRunnable
 
struct  MaybeHostDeviceRunnable< T, std::enable_if_t< __nv_is_extended_device_lambda_closure_type(T)> >
 
class  MemProfiler
 
class  MFCellBilinear
 [Bi|Tri]linear interpolation on cell centered data. More...
 
class  MFCellConsLinInterp
 Linear conservative interpolation on cell centered data. More...
 
struct  MFInfo
 
class  MFInterpolater
 
class  MFIter
 
struct  MFItInfo
 
class  MFNodeBilinear
 
class  MFPCInterp
 Piecewise constant interpolation on cell-centered data. More...
 
struct  Minus
 
class  MLABecLaplacian
 
class  MLALaplacian
 
class  MLCellABecLap
 
class  MLCellLinOp
 
class  MLCGSolver
 
class  MLEBABecLap
 
class  MLEBNodeFDLaplacian
 
class  MLEBTensorOp
 
class  MLLinOp
 
class  MLMG
 
class  MLMGBndry
 
class  MLNodeLaplacian
 
class  MLNodeLinOp
 
class  MLNodeTensorLaplacian
 
class  MLPoisson
 
class  MLTensorOp
 
struct  MultiArray4
 
class  MultiCutFab
 
class  MultiFab
 A collection (stored as an array) of FArrayBox objects. This class is useful for storing floating point data on a domain defined by a union of rectangular regions embedded in a uniform index space. MultiFab class extends the function of the underlying FabArray class just as the FArrayBox class extends the function of BaseFab<Real>. Additional member functions are defined for I/O and simple arithmetic operations on these aggregate objects. This class does NOT provide a copy constructor or assignment operator. More...
 
class  MultiFabCopyDescriptor
 
class  MultiMask
 
class  MultiMaskIter
 
struct  NeighborCode
 
struct  NeighborData
 
class  NeighborList
 
class  NeighborParticleContainer
 
struct  Neighbors
 
struct  NeighborUnpackPolicy
 
class  NFilesIter
 This class encapsulates writing to nfiles. More...
 
class  NodalProjector
 
class  NodeBilinear
 Bilinear interpolation on node centered data. More...
 
struct  NullInterpHook
 
struct  NumComps
 
class  OrderedBoxes
 
class  Orientation
 Encapsulation of the Orientation of the Faces of a Box. More...
 
class  OrientationIter
 An Iterator over the Orientation of Faces of a Box. More...
 
class  ParConstIter
 
class  PArena
 This arena uses CUDA stream-ordered memory allocator if available. If not, use The_Arena(). More...
 
class  ParGDB
 we use this for non-Amr particle code More...
 
class  ParGDBBase
 
class  ParIter
 
class  ParIterBase
 
class  ParmParse
 Parse Parameters From Command Line and Input Files. More...
 
class  Parser
 
struct  parser_assign
 
struct  parser_f1
 
struct  parser_f2
 
struct  parser_f3
 
struct  parser_node
 
struct  parser_number
 
union  parser_nvp
 
struct  parser_symbol
 
struct  ParserExeADD
 
struct  ParserExeADD_PN
 
struct  ParserExeADD_PP
 
struct  ParserExeADD_VN
 
struct  ParserExeADD_VP
 
struct  ParserExecutor
 
struct  ParserExeDIV_B
 
struct  ParserExeDIV_F
 
struct  ParserExeDIV_PN
 
struct  ParserExeDIV_PP
 
struct  ParserExeDIV_VN
 
struct  ParserExeDIV_VP
 
struct  ParserExeF1
 
struct  ParserExeF2_B
 
struct  ParserExeF2_F
 
struct  ParserExeIF
 
struct  ParserExeJUMP
 
struct  ParserExeMUL
 
struct  ParserExeMUL_PN
 
struct  ParserExeMUL_PP
 
struct  ParserExeMUL_VN
 
struct  ParserExeMUL_VP
 
struct  ParserExeNEG
 
struct  ParserExeNEG_P
 
struct  ParserExeNull
 
struct  ParserExeNumber
 
struct  ParserExeSUB
 
struct  ParserExeSUB_PN
 
struct  ParserExeSUB_PP
 
struct  ParserExeSUB_VN
 
struct  ParserExeSUB_VP
 
struct  ParserExeSymbol
 
struct  ParserStack
 
struct  Particle
 The struct used to store particles. More...
 
struct  ParticleArray
 
struct  ParticleArrayAccessor
 
struct  ParticleBase
 
struct  ParticleBase< T, 0, 0 >
 
struct  ParticleBase< T, 0, NInt >
 
struct  ParticleBase< T, NReal, 0 >
 
class  ParticleBufferMap
 
struct  ParticleCommData
 A struct used for communicating particle data across processes during multi-level operations. More...
 
class  ParticleContainer
 A distributed container for Particles sorted onto the levels, grids, and tiles of a block-structured AMR hierarchy. More...
 
class  ParticleContainerBase
 
struct  ParticleCopyOp
 
struct  ParticleCopyPlan
 
struct  ParticleCPUWrapper
 
struct  ParticleIDWrapper
 
struct  ParticleInitType
 A struct used to pass initial data into the various Init methods. This struct is used to pass initial data into the various Init methods of the particle container. That data should be initialized in the order real struct data, int struct data, real array data, int array data. If fewer components are specified than the template parameters specify for, a given component, then the extra values will be set to zero. If more components are specified, it is a compile-time error. More...
 
class  ParticleLocator
 
struct  ParticleLocData
 A struct used for storing a particle's position in the AMR hierarchy. More...
 
struct  ParticleTile
 
struct  ParticleTileData
 
struct  PCData
 
class  PCInterp
 Piecewise Constant interpolation on cell centered data. More...
 
class  Periodicity
 This provides length of period for periodic domains. 0 means it is not periodic in that direction. It is also assumed that the periodic domain starts with index 0. More...
 
class  PETScABecLap
 
class  PhysBCFunct
 
class  PhysBCFunctNoOp
 
class  PinnedArenaAllocator
 
class  PlotFileData
 
class  PlotFileDataImpl
 
struct  Plus
 
class  PODVector
 
class  PolymorphicAllocator
 
struct  PolymorphicArray4
 
class  Print
 This class provides the user with a few print options. More...
 
class  PrintToFile
 This class prints to a file with a given base name. More...
 
struct  RandomEngine
 
class  RealBox
 A Box with real dimensions. A RealBox is OK iff volume >= 0. More...
 
class  RealDescriptor
 This class is meant to hold all information needed to completely describe the "Real" floating-point type on a machine. By "Real" here we mean either the "float" or "double" type that this version of AMReX was built with, which corresponds to whether BL_USE_FLOAT or BL_USE_DOUBLE was used to build the version of the library. More...
 
class  RealVect
 A Real vector in SpaceDim-dimensional space. More...
 
struct  RedistributeUnpackPolicy
 
class  ReduceData
 
struct  ReduceOpLogicalAnd
 
struct  ReduceOpLogicalOr
 
struct  ReduceOpMax
 
struct  ReduceOpMin
 
class  ReduceOps
 
struct  ReduceOpSum
 
class  ref_wrapper
 
struct  RunOnGpu
 
struct  RunOnGpu< ArenaAllocator< T > >
 
struct  RunOnGpu< AsyncArenaAllocator< T > >
 
struct  RunOnGpu< DeviceArenaAllocator< T > >
 
struct  RunOnGpu< ManagedArenaAllocator< T > >
 
struct  Same
 
struct  Same< T, U >
 
struct  SparseBinIteratorFactory
 
class  SparseBins
 A container for storing items in a set of bins using "sparse" storage. More...
 
class  SplineDistFcnElement2d
 
struct  SrcComp
 
class  StateData
 Current and previous level-time data. More...
 
class  StateDataPhysBCFunct
 
class  StateDescriptor
 Attributes of StateData. More...
 
class  STLtools
 
class  StreamRetry
 
struct  StructOfArrays
 
class  TagBox
 Tagged cells in a Box. More...
 
class  TagBoxArray
 An array of TagBoxes. More...
 
struct  TheFaArenaDeleter
 
struct  TileSize
 
class  TinyProfiler
 A simple profiler that returns basic performance information (e.g. min, max, and average running time) More...
 
class  TinyProfileRegion
 
class  TracerParticleContainer
 
struct  TypeList
 
class  Vector
 This class is a thin wrapper around std::vector. Unlike vector, Vector::operator[] provides bound checking when compiled with DEBUG=TRUE. More...
 
struct  VectorTag
 
class  VisMF
 File I/O for FabArray<FArrayBox>. Wrapper class for reading/writing FabArray<FArrayBox> objects to disk in various "smart" ways. More...
 
class  WeightedBox
 
class  WeightedBoxList
 
struct  XDim3
 
class  XYPlotDataList
 
class  XYPlotDataListLink
 
class  YAFluxRegister
 

Typedefs

typedef void(* DeriveFunc) (amrex::Real *data, AMREX_ARLIM_P(dlo), AMREX_ARLIM_P(dhi), const int *nvar, const amrex::Real *compdat, AMREX_ARLIM_P(compdat_lo), AMREX_ARLIM_P(compdat_hi), const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)
 Type of extern "C" function called by DeriveRec to compute derived quantity. More...
 
typedef void(* DeriveFunc3D) (amrex::Real *data, const int *dlo, const int *dhi, const int *nvar, const amrex::Real *compdat, const int *clo, const int *chi, const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)
 This is dimension agnostic. For example, dlo always has three elements. More...
 
typedef void(* DeriveFuncFab) (const amrex::Box &bx, amrex::FArrayBox &derfab, int dcomp, int ncomp, const amrex::FArrayBox &datafab, const amrex::Geometry &geomdata, amrex::Real time, const int *bcrec, int level)
 
typedef void(* BndryFuncFabDefault) (Box const &bx, FArrayBox &data, const int dcomp, const int numcomp, Geometry const &geom, const Real time, const Vector< BCRec > &bcr, const int bcomp, const int scomp)
 
typedef void(* ErrorFuncDefault) (int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)
 Type of extern "C" function called by ErrorRec to do tagging of cells for refinement. More...
 
typedef void(* ErrorFunc2Default) (int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const int *level, const amrex::Real *avg)
 
typedef void(* ErrorFunc3DDefault) (int *tag, const int *tlo, const int *thi, const int *tagval, const int *clearval, amrex::Real *data, const int *data_lo, const int *data_hi, const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)
 Dimension agnostic version that always has three elements. Note that this is only implemented for the ErrorFunc class, not ErrorFunc2. More...
 
typedef void(* PTR_TO_VOID_FUNC) (void)
 
typedef void(* ErrorHandler) (const char *msg)
 
template<class T , std::size_t N>
using Array = std::array< T, N >
 
using RealArray = Array< Real, AMREX_SPACEDIM >
 
using IntArray = Array< int, AMREX_SPACEDIM >
 
typedef int key_table_type
 
using BndryBATransformer = BATransformer
 
using RuntimeError = std::runtime_error
 
using TheFaArenaPointer = std::unique_ptr< char, TheFaArenaDeleter >
 
using FArrayBoxFactory = DefaultFabFactory< FArrayBox >
 
template<class T >
using DefaultAllocator = amrex::ArenaAllocator< T >
 
using gpuStream_t = cudaStream_t
 
using gpuDeviceProp_t = cudaDeviceProp
 
using gpuError_t = cudaError_t
 
typedef FabArrayId MultiFabId
 
typedef void(* BndryFuncDefault) (Real *data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi), const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
 
typedef void(* BndryFunc3DDefault) (Real *data, const int *lo, const int *hi, const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)
 
typedef void(* UserFillBox) (Box const &bx, Array4< Real > const &dest, const int dcomp, const int numcomp, GeometryData const &geom, const Real time, const BCRec *bcr, const int bcomp, const int orig_comp)
 
using randState_t = curandState_t
 
template<class... Ts>
using Tuple = std::tuple< Ts... >
 
template<bool B, class T = void>
using EnableIf_t = typename std::enable_if< B, T >::type
 
template<template< class... > class Op, class... Args>
using IsDetected = typename detail::Detector< detail::Nonesuch, void, Op, Args... >::value_t
 
template<template< class... > class Op, class... Args>
using Detected_t = typename detail::Detector< detail::Nonesuch, void, Op, Args... >::type
 
template<class Default , template< class... > class Op, class... Args>
using DetectedOr = typename detail::Detector< Default, void, Op, Args... >::type
 
template<class Expected , template< typename... > class Op, class... Args>
using IsDetectedExact = std::is_same< Expected, Detected_t< Op, Args... > >
 
template<class B >
using Negation = std::integral_constant< bool, !bool(B::value)>
 
using MaxResSteadyClock = std::conditional< std::chrono::high_resolution_clock::is_steady, std::chrono::high_resolution_clock, std::chrono::steady_clock >::type
 
using TracerParIter = ParIter< AMREX_SPACEDIM >
 

Enumerations

enum  InterpEM_t { InterpE, InterpB }
 
enum  FabType : int {
  FabType::covered = -1, FabType::regular = 0, FabType::singlevalued = 1, FabType::multivalued = 2,
  FabType::undefined = 100
}
 
enum  FillType { FillLocally, FillRemotely, Unfillable }
 
enum  RunOn { RunOn::Gpu, RunOn::Cpu, RunOn::Device =Gpu, RunOn::Host =Cpu }
 
enum  MakeType { make_alias, make_deep_copy }
 
enum  Direction : int { Direction::AMREX_D_DECL =(x = 0, y = 1, z = 2) }
 
enum  iparser_exe_t {
  IPARSER_EXE_NULL = 0, IPARSER_EXE_NUMBER, IPARSER_EXE_SYMBOL, IPARSER_EXE_ADD,
  IPARSER_EXE_SUB, IPARSER_EXE_MUL, IPARSER_EXE_DIV_F, IPARSER_EXE_DIV_B,
  IPARSER_EXE_NEG, IPARSER_EXE_F1, IPARSER_EXE_F2_F, IPARSER_EXE_F2_B,
  IPARSER_EXE_ADD_VP, IPARSER_EXE_SUB_VP, IPARSER_EXE_MUL_VP, IPARSER_EXE_DIV_VP,
  IPARSER_EXE_DIV_PV, IPARSER_EXE_ADD_PP, IPARSER_EXE_SUB_PP, IPARSER_EXE_MUL_PP,
  IPARSER_EXE_DIV_PP, IPARSER_EXE_NEG_P, IPARSER_EXE_ADD_VN, IPARSER_EXE_SUB_VN,
  IPARSER_EXE_MUL_VN, IPARSER_EXE_DIV_NV, IPARSER_EXE_DIV_VN, IPARSER_EXE_ADD_PN,
  IPARSER_EXE_SUB_PN, IPARSER_EXE_MUL_PN, IPARSER_EXE_DIV_PN, IPARSER_EXE_IF,
  IPARSER_EXE_JUMP
}
 
enum  iparser_f1_t { IPARSER_ABS = 1 }
 
enum  iparser_f2_t {
  IPARSER_FLRDIV = 1, IPARSER_POW, IPARSER_GT, IPARSER_LT,
  IPARSER_GEQ, IPARSER_LEQ, IPARSER_EQ, IPARSER_NEQ,
  IPARSER_AND, IPARSER_OR, IPARSER_MIN, IPARSER_MAX
}
 
enum  iparser_f3_t { IPARSER_IF }
 
enum  iparser_node_t {
  IPARSER_NUMBER = 1, IPARSER_SYMBOL, IPARSER_ADD, IPARSER_SUB,
  IPARSER_MUL, IPARSER_DIV, IPARSER_NEG, IPARSER_F1,
  IPARSER_F2, IPARSER_F3, IPARSER_ASSIGN, IPARSER_LIST,
  IPARSER_ADD_VP, IPARSER_ADD_PP, IPARSER_SUB_VP, IPARSER_SUB_PP,
  IPARSER_MUL_VP, IPARSER_MUL_PP, IPARSER_DIV_VP, IPARSER_DIV_PV,
  IPARSER_DIV_PP, IPARSER_NEG_P
}
 
enum  parser_exe_t {
  PARSER_EXE_NULL = 0, PARSER_EXE_NUMBER, PARSER_EXE_SYMBOL, PARSER_EXE_ADD,
  PARSER_EXE_SUB, PARSER_EXE_MUL, PARSER_EXE_DIV_F, PARSER_EXE_DIV_B,
  PARSER_EXE_NEG, PARSER_EXE_F1, PARSER_EXE_F2_F, PARSER_EXE_F2_B,
  PARSER_EXE_ADD_VP, PARSER_EXE_SUB_VP, PARSER_EXE_MUL_VP, PARSER_EXE_DIV_VP,
  PARSER_EXE_ADD_PP, PARSER_EXE_SUB_PP, PARSER_EXE_MUL_PP, PARSER_EXE_DIV_PP,
  PARSER_EXE_NEG_P, PARSER_EXE_ADD_VN, PARSER_EXE_SUB_VN, PARSER_EXE_MUL_VN,
  PARSER_EXE_DIV_VN, PARSER_EXE_ADD_PN, PARSER_EXE_SUB_PN, PARSER_EXE_MUL_PN,
  PARSER_EXE_DIV_PN, PARSER_EXE_IF, PARSER_EXE_JUMP
}
 
enum  parser_f1_t {
  PARSER_SQRT = 1, PARSER_EXP, PARSER_LOG, PARSER_LOG10,
  PARSER_SIN, PARSER_COS, PARSER_TAN, PARSER_ASIN,
  PARSER_ACOS, PARSER_ATAN, PARSER_SINH, PARSER_COSH,
  PARSER_TANH, PARSER_ABS, PARSER_POW_M3, PARSER_POW_M2,
  PARSER_POW_M1, PARSER_POW_P1, PARSER_POW_P2, PARSER_POW_P3
}
 
enum  parser_f2_t {
  PARSER_POW = 1, PARSER_GT, PARSER_LT, PARSER_GEQ,
  PARSER_LEQ, PARSER_EQ, PARSER_NEQ, PARSER_AND,
  PARSER_OR, PARSER_HEAVISIDE, PARSER_JN, PARSER_MIN,
  PARSER_MAX
}
 
enum  parser_f3_t { PARSER_IF }
 
enum  parser_node_t {
  PARSER_NUMBER = 1, PARSER_SYMBOL, PARSER_ADD, PARSER_SUB,
  PARSER_MUL, PARSER_DIV, PARSER_NEG, PARSER_F1,
  PARSER_F2, PARSER_F3, PARSER_ASSIGN, PARSER_LIST,
  PARSER_ADD_VP, PARSER_ADD_PP, PARSER_SUB_VP, PARSER_SUB_PP,
  PARSER_MUL_VP, PARSER_MUL_PP, PARSER_DIV_VP, PARSER_DIV_PP,
  PARSER_NEG_P
}
 
enum  EBSupport : int { EBSupport::none = 0, EBSupport::basic = 1, EBSupport::volume = 2, EBSupport::full = 3 }
 
enum  BottomSolver : int {
  BottomSolver::Default, BottomSolver::smoother, BottomSolver::bicgstab, BottomSolver::cg,
  BottomSolver::bicgcg, BottomSolver::cgbicg, BottomSolver::hypre, BottomSolver::petsc
}
 
enum  DataLayout { DataLayout::AoS = 0, DataLayout::SoA }
 

Functions

static bool NeedToTouchUpPhysCorners (const Geometry &geom)
 
static bool HasPhysBndry (const Box &b, const Box &dmn, const Geometry &geom)
 
static void FixUpPhysCorners (FArrayBox &fab, AmrLevel &TheLevel, int state_indx, Real time, int scomp, int dcomp, int ncomp)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_first_order_extrap_cpu (amrex::Box const &bx, int nComp, amrex::Array4< const int > const &mask, amrex::Array4< amrex::Real > const &data) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_first_order_extrap_gpu (int i, int j, int k, int n, amrex::Box const &bx, amrex::Array4< const int > const &mask, amrex::Array4< amrex::Real > const &data) noexcept
 
std::ostream & operator<< (std::ostream &os, AmrMesh const &amr_mesh)
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void ParticleToMesh (PC const &pc, const Vector< MultiFab * > &mf, int lev_min, int lev_max, F &&f, bool zero_out_input=true, bool vol_weight=true)
 
static int FindCut (const int *hist, int lo, int hi, CutStatus &status)
 
std::ostream & operator<< (std::ostream &os, const ErrorList &elst)
 
void AMRErrorTag_GRAD (const Box &bx, Array4< const Real > const &dat, Array4< char > const &tag, Real threshold, char tagval)
 
void AMRErrorTag_RELGRAD (const Box &bx, Array4< const Real > const &dat, Array4< char > const &tag, Real threshold, char tagval)
 
void AMRErrorTag_LESS (const Box &bx, Array4< const Real > const &dat, Array4< char > const &tag, Real threshold, char tagval) noexcept
 
void AMRErrorTag_GREATER (const Box &bx, Array4< const Real > const &dat, Array4< char > const &tag, Real threshold, char tagval) noexcept
 
void AMRErrorTag_BOX (const Box &bx, Array4< char > const &tag, const RealBox &tag_rb, const Geometry &geom, char tagval) noexcept
 
void AMRErrorTag_VORT (const Box &bx, Array4< const Real > const &dat, Array4< char > const &tag, int level, Real threshold, char tagval) noexcept
 
void InterpCrseFineBndryEMfield (InterpEM_t interp_type, const Array< MultiFab, AMREX_SPACEDIM > &crse, Array< MultiFab, AMREX_SPACEDIM > &fine, const Geometry &cgeom, const Geometry &fgeom, int ref_ratio)
 
void InterpCrseFineBndryEMfield (InterpEM_t interp_type, const Array< MultiFab const *, AMREX_SPACEDIM > &crse, const Array< MultiFab *, AMREX_SPACEDIM > &fine, const Geometry &cgeom, const Geometry &fgeom, int ref_ratio)
 
void FillPatchInterp (MultiFab &mf_fine_patch, int fcomp, MultiFab const &mf_crse_patch, int ccomp, int ncomp, IntVect const &ng, const Geometry &cgeom, const Geometry &fgeom, Box const &dest_domain, const IntVect &ratio, MFInterpolater *mapper, const Vector< BCRec > &bcs, int bcscomp)
 
template<typename Interp >
bool ProperlyNested (const IntVect &ratio, const IntVect &blocking_factor, int ngrow, const IndexType &boxType, Interp *mapper)
 
template<typename MF , typename BC >
std::enable_if_t< IsFabArray< MF >::value > FillPatchSingleLevel (MF &mf, IntVect const &nghost, Real time, const Vector< MF * > &smf, const Vector< Real > &stime, int scomp, int dcomp, int ncomp, const Geometry &geom, BC &physbcf, int bcfcomp)
 
template<typename MF , typename BC >
std::enable_if_t< IsFabArray< MF >::value > FillPatchSingleLevel (MF &mf, Real time, const Vector< MF * > &smf, const Vector< Real > &stime, int scomp, int dcomp, int ncomp, const Geometry &geom, BC &physbcf, int bcfcomp)
 
template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > FillPatchTwoLevels (MF &mf, IntVect const &nghost, Real time, const Vector< MF * > &cmf, const Vector< Real > &ct, const Vector< MF * > &fmf, const Vector< Real > &ft, int scomp, int dcomp, int ncomp, const Geometry &cgeom, const Geometry &fgeom, BC &cbc, int cbccomp, BC &fbc, int fbccomp, const IntVect &ratio, Interp *mapper, const Vector< BCRec > &bcs, int bcscomp, const PreInterpHook &pre_interp={}, const PostInterpHook &post_interp={})
 
template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > FillPatchTwoLevels (MF &mf, Real time, const Vector< MF * > &cmf, const Vector< Real > &ct, const Vector< MF * > &fmf, const Vector< Real > &ft, int scomp, int dcomp, int ncomp, const Geometry &cgeom, const Geometry &fgeom, BC &cbc, int cbccomp, BC &fbc, int fbccomp, const IntVect &ratio, Interp *mapper, const Vector< BCRec > &bcs, int bcscomp, const PreInterpHook &pre_interp={}, const PostInterpHook &post_interp={})
 
template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > FillPatchTwoLevels (Array< MF *, AMREX_SPACEDIM > const &mf, IntVect const &nghost, Real time, const Vector< Array< MF *, AMREX_SPACEDIM > > &cmf, const Vector< Real > &ct, const Vector< Array< MF *, AMREX_SPACEDIM > > &fmf, const Vector< Real > &ft, int scomp, int dcomp, int ncomp, const Geometry &cgeom, const Geometry &fgeom, Array< BC, AMREX_SPACEDIM > &cbc, int cbccomp, Array< BC, AMREX_SPACEDIM > &fbc, int fbccomp, const IntVect &ratio, Interp *mapper, const Array< Vector< BCRec >, AMREX_SPACEDIM > &bcs, int bcscomp, const PreInterpHook &pre_interp={}, const PostInterpHook &post_interp={})
 
template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > FillPatchTwoLevels (Array< MF *, AMREX_SPACEDIM > const &mf, Real time, const Vector< Array< MF *, AMREX_SPACEDIM > > &cmf, const Vector< Real > &ct, const Vector< Array< MF *, AMREX_SPACEDIM > > &fmf, const Vector< Real > &ft, int scomp, int dcomp, int ncomp, const Geometry &cgeom, const Geometry &fgeom, Array< BC, AMREX_SPACEDIM > &cbc, int cbccomp, Array< BC, AMREX_SPACEDIM > &fbc, int fbccomp, const IntVect &ratio, Interp *mapper, const Array< Vector< BCRec >, AMREX_SPACEDIM > &bcs, int bcscomp, const PreInterpHook &pre_interp={}, const PostInterpHook &post_interp={})
 
template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > InterpFromCoarseLevel (MF &mf, Real time, const MF &cmf, int scomp, int dcomp, int ncomp, const Geometry &cgeom, const Geometry &fgeom, BC &cbc, int cbccomp, BC &fbc, int fbccomp, const IntVect &ratio, Interp *mapper, const Vector< BCRec > &bcs, int bcscomp, const PreInterpHook &pre_interp={}, const PostInterpHook &post_interp={})
 
template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > InterpFromCoarseLevel (MF &mf, IntVect const &nghost, Real time, const MF &cmf, int scomp, int dcomp, int ncomp, const Geometry &cgeom, const Geometry &fgeom, BC &cbc, int cbccomp, BC &fbc, int fbccomp, const IntVect &ratio, Interp *mapper, const Vector< BCRec > &bcs, int bcscomp, const PreInterpHook &pre_interp={}, const PostInterpHook &post_interp={})
 
template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > InterpFromCoarseLevel (Array< MF *, AMREX_SPACEDIM > const &mf, Real time, const Array< MF *, AMREX_SPACEDIM > &cmf, int scomp, int dcomp, int ncomp, const Geometry &cgeom, const Geometry &fgeom, Array< BC, AMREX_SPACEDIM > &cbc, int cbccomp, Array< BC, AMREX_SPACEDIM > &fbc, int fbccomp, const IntVect &ratio, Interp *mapper, const Array< Vector< BCRec >, AMREX_SPACEDIM > &bcs, int bcscomp, const PreInterpHook &pre_interp={}, const PostInterpHook &post_interp={})
 
template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > InterpFromCoarseLevel (Array< MF *, AMREX_SPACEDIM > const &mf, IntVect const &nghost, Real time, const Array< MF *, AMREX_SPACEDIM > &cmf, int scomp, int dcomp, int ncomp, const Geometry &cgeom, const Geometry &fgeom, Array< BC, AMREX_SPACEDIM > &cbc, int cbccomp, Array< BC, AMREX_SPACEDIM > &fbc, int fbccomp, const IntVect &ratio, Interp *mapper, const Array< Vector< BCRec >, AMREX_SPACEDIM > &bcs, int bcscomp, const PreInterpHook &pre_interp={}, const PostInterpHook &post_interp={})
 
template<typename MF , typename Interp >
std::enable_if_t< IsFabArray< MF >::value &&!std::is_same< Interp, MFInterpolater >::value > FillPatchInterp (MF &mf_fine_patch, int fcomp, MF const &mf_crse_patch, int ccomp, int ncomp, IntVect const &ng, const Geometry &cgeom, const Geometry &fgeom, Box const &dest_domain, const IntVect &ratio, Interp *mapper, const Vector< BCRec > &bcs, int bcscomp)
 
template<typename MF >
std::enable_if_t< IsFabArray< MF >::value > FillPatchInterp (MF &mf_fine_patch, int fcomp, MF const &mf_crse_patch, int ccomp, int ncomp, IntVect const &ng, const Geometry &cgeom, const Geometry &fgeom, Box const &dest_domain, const IntVect &ratio, InterpBase *mapper, const Vector< BCRec > &bcs, int bcscomp)
 
AMREX_GPU_HOST_DEVICE void fluxreg_fineadd (Box const &bx, Array4< Real > const &reg, const int rcomp, Array4< Real const > const &flx, const int fcomp, const int ncomp, const int, Dim3 const &ratio, const Real mult) noexcept
 Add fine grid flux to flux register. Flux array is a fine grid edge based object, Register is a coarse grid edge based object. It is assumed that the coarsened flux region contains the register region. More...
 
AMREX_GPU_HOST_DEVICE void fluxreg_fineareaadd (Box const &bx, Array4< Real > const &reg, const int rcomp, Array4< Real const > const &area, Array4< Real const > const &flx, const int fcomp, const int ncomp, const int, Dim3 const &ratio, const Real mult) noexcept
 Add fine grid flux times area to flux register. Flux array is a fine grid edge based object, Register is a coarse grid edge based object. It is assumed that the coarsened flux region contains the register region. More...
 
AMREX_GPU_HOST_DEVICE void fluxreg_reflux (Box const &bx, Array4< Real > const &s, const int scomp, Array4< Real const > const &f, Array4< Real const > const &v, const int ncomp, const Real mult, const Orientation face) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void pcinterp_interp (Box const &bx, Array4< Real > const &fine, const int fcomp, const int ncomp, Array4< Real const > const &crse, const int ccomp, IntVect const &ratio) noexcept
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void nodebilin_slopes (Box const &bx, Array4< T > const &slope, Array4< T const > const &u, const int icomp, const int ncomp, IntVect const &ratio) noexcept
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void nodebilin_interp (Box const &bx, Array4< T > const &fine, const int fcomp, const int ncomp, Array4< T const > const &slope, Array4< T const > const &crse, const int ccomp, IntVect const &ratio) noexcept
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void facediv_face_interp (int, int, int, int, int, int, Array4< T const > const &, Array4< T > const &, Array4< const int > const &, IntVect const &) noexcept
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void facediv_int (int, int, int, int, GpuArray< Array4< T >, AMREX_SPACEDIM > const &, IntVect const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void face_linear_interp_x (int i, int, int, int n, Array4< T > const &fine, Array4< T const > const &crse, IntVect const &ratio) noexcept
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void face_linear_interp_y (int i, int j, int, int n, Array4< T > const &fine, Array4< T const > const &crse, IntVect const &ratio) noexcept
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void face_linear_interp_z (int i, int j, int k, int n, Array4< T > const &fine, Array4< T const > const &crse, IntVect const &ratio) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mf_cell_cons_lin_interp_llslope (int i, int, int, Array4< Real > const &slope, Array4< Real const > const &u, int scomp, int ncomp, Box const &domain, BCRec const *bc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mf_cell_cons_lin_interp_mcslope (int i, int, int, int ns, Array4< Real > const &slope, Array4< Real const > const &u, int scomp, int, Box const &domain, IntVect const &ratio, BCRec const *bc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mf_cell_cons_lin_interp (int i, int, int, int ns, Array4< Real > const &fine, int fcomp, Array4< Real const > const &slope, Array4< Real const > const &crse, int ccomp, int, IntVect const &ratio) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mf_cell_cons_lin_interp_mcslope_sph (int i, int ns, Array4< Real > const &slope, Array4< Real const > const &u, int scomp, int, Box const &domain, IntVect const &ratio, BCRec const *bc, Real drf, Real rlo) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mf_cell_cons_lin_interp_sph (int i, int ns, Array4< Real > const &fine, int fcomp, Array4< Real const > const &slope, Array4< Real const > const &crse, int ccomp, int, IntVect const &ratio, Real drf, Real rlo) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mf_cell_bilin_interp (int i, int, int, int n, Array4< Real > const &fine, int fcomp, Array4< Real const > const &crse, int ccomp, IntVect const &ratio) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mf_nodebilin_interp (int i, int, int, int n, Array4< Real > const &fine, int fcomp, Array4< Real const > const &crse, int ccomp, IntVect const &ratio) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mf_cell_cons_lin_interp_mcslope_rz (int i, int j, int ns, Array4< Real > const &slope, Array4< Real const > const &u, int scomp, int ncomp, Box const &domain, IntVect const &ratio, BCRec const *bc, Real drf, Real rlo) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mf_cell_cons_lin_interp_rz (int i, int j, int ns, Array4< Real > const &fine, int fcomp, Array4< Real const > const &slope, Array4< Real const > const &crse, int ccomp, int ncomp, IntVect const &ratio, Real drf, Real rlo) noexcept
 
std::string Version ()
 
AMReXInitialize (MPI_Comm mpi_comm, std::ostream &a_osout=std::cout, std::ostream &a_oserr=std::cerr, ErrorHandler a_errhandler=nullptr)
 
AMReXInitialize (int &argc, char **&argv, bool build_parm_parse=true, MPI_Comm mpi_comm=MPI_COMM_WORLD, const std::function< void()> &func_parm_parse={}, std::ostream &a_osout=std::cout, std::ostream &a_oserr=std::cerr, ErrorHandler a_errorhandler=nullptr)
 
void Finalize (AMReX *pamrex)
 
void Finalize ()
 
void ExecOnFinalize (PTR_TO_VOID_FUNC)
 We maintain a stack of functions that need to be called in Finalize(). The functions are called in LIFO order. The idea here is to allow classes to clean up any "global" state that they maintain when we're exiting from AMReX. More...
 
void ExecOnInitialize (PTR_TO_VOID_FUNC)
 
template<class... Ts>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void ignore_unused (const Ts &...)
 This shuts up the compiler about unused variables. More...
 
void Error (const std::string &msg)
 Print out message to cerr and exit via amrex::Abort(). More...
 
void Error_host (const char *msg)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void Error (const char *msg=0)
 
void Warning (const std::string &msg)
 Print out warning message to cerr. More...
 
void Warning_host (const char *msg)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void Warning (const char *msg)
 
void Abort (const std::string &msg)
 Print out message to cerr and exit via abort(). More...
 
void Abort_host (const char *msg)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void Abort (const char *msg=0)
 
void Assert_host (const char *EX, const char *file, int line, const char *msg)
 Prints assertion failed messages to cerr and exits via abort(). Intended for use by the BL_ASSERT() macro in <AMReX_BLassert.H>. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void Assert (const char *EX, const char *file, int line, const char *msg=nullptr)
 
void write_to_stderr_without_buffering (const char *str)
 This is used by amrex::Error(), amrex::Abort(), and amrex::Assert() to ensure that when writing the message to stderr, that no additional heap-based memory is allocated. More...
 
void SetErrorHandler (ErrorHandler errhandler)
 
std::ostream & OutStream ()
 
std::ostream & ErrorStream ()
 
int Verbose () noexcept
 
void SetVerbose (int v) noexcept
 
std::string get_command ()
 
int command_argument_count ()
 
std::string get_command_argument (int number)
 Get command line arguments. The executable name is the zero-th argument. Return empty string if there are not that many arguments. std::string. More...
 
void GccPlacater ()
 
template<class T >
AMREX_GPU_HOST_DEVICE constexpr const AMREX_FORCE_INLINE T & min (const T &a, const T &b) noexcept
 
template<class T , class ... Ts>
AMREX_GPU_HOST_DEVICE constexpr const AMREX_FORCE_INLINE T & min (const T &a, const T &b, const Ts &... c) noexcept
 
template<class T >
AMREX_GPU_HOST_DEVICE constexpr const AMREX_FORCE_INLINE T & max (const T &a, const T &b) noexcept
 
template<class T , class ... Ts>
AMREX_GPU_HOST_DEVICE constexpr const AMREX_FORCE_INLINE T & max (const T &a, const T &b, const Ts &... c) noexcept
 
template<class T >
AMREX_GPU_HOST_DEVICE constexpr AMREX_FORCE_INLINEelemwiseMin (T const &a, T const &b) noexcept
 
template<class T , class ... Ts>
AMREX_GPU_HOST_DEVICE constexpr AMREX_FORCE_INLINEelemwiseMin (const T &a, const T &b, const Ts &... c) noexcept
 
template<class T >
AMREX_GPU_HOST_DEVICE constexpr AMREX_FORCE_INLINEelemwiseMax (T const &a, T const &b) noexcept
 
template<class T , class ... Ts>
AMREX_GPU_HOST_DEVICE constexpr AMREX_FORCE_INLINEelemwiseMax (const T &a, const T &b, const Ts &... c) noexcept
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void Swap (T &t1, T &t2) noexcept
 
template<typename T >
AMREX_GPU_HOST_DEVICE constexpr const AMREX_FORCE_INLINE T & Clamp (const T &v, const T &lo, const T &hi)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE std::enable_if< std::is_floating_point< T >::value, bool >::type almostEqual (T x, T y, int ulp=2)
 
template<class T , class F , typename std::enable_if< std::is_floating_point< T >::value, int >::type FOO = 0>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINEbisect (T lo, T hi, F f, T tol=1e-12, int max_iter=100)
 
template<typename T , typename I , typename std::enable_if< std::is_integral< I >::value, int >::type = 0>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINEbisect (T const *d, I lo, I hi, T const &v)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int clz (std::uint8_t x) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int clz (std::uint16_t x) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int clz (std::uint32_t x) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int clz (std::uint64_t x) noexcept
 
ArenaThe_Arena ()
 
ArenaThe_Async_Arena ()
 
ArenaThe_Device_Arena ()
 
ArenaThe_Managed_Arena ()
 
ArenaThe_Pinned_Arena ()
 
ArenaThe_Cpu_Arena ()
 
std::size_t aligned_size (std::size_t align_requirement, std::size_t size) noexcept
 Given a minimum required size of size bytes, this returns the next largest arena size that will align to align_requirement bytes. More...
 
bool is_aligned (const void *p, std::size_t alignment) noexcept
 
template<class T , typename = typename T::FABType>
std::array< T *, AMREX_SPACEDIM > GetArrOfPtrs (std::array< T, AMREX_SPACEDIM > &a) noexcept
 
template<class T >
std::array< T *, AMREX_SPACEDIM > GetArrOfPtrs (const std::array< std::unique_ptr< T >, AMREX_SPACEDIM > &a) noexcept
 
template<class T >
std::array< T const *, AMREX_SPACEDIM > GetArrOfConstPtrs (const std::array< T, AMREX_SPACEDIM > &a) noexcept
 
template<class T >
std::array< T const *, AMREX_SPACEDIM > GetArrOfConstPtrs (const std::array< T *, AMREX_SPACEDIM > &a) noexcept
 
template<class T >
std::array< T const *, AMREX_SPACEDIM > GetArrOfConstPtrs (const std::array< std::unique_ptr< T >, AMREX_SPACEDIM > &a) noexcept
 
XDim3 makeXDim3 (const Array< Real, AMREX_SPACEDIM > &a) noexcept
 
template<class Tto , class Tfrom >
AMREX_GPU_HOST_DEVICE Array4< Tto > ToArray4 (Array4< Tfrom > const &a_in) noexcept
 
template<class T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 lbound (Array4< T > const &a) noexcept
 
template<class T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 ubound (Array4< T > const &a) noexcept
 
template<class T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 length (Array4< T > const &a) noexcept
 
template<typename T >
std::ostream & operator<< (std::ostream &os, const Array4< T > &a)
 
template<typename T >
PolymorphicArray4< T > makePolymorphic (Array4< T > const &a)
 
void BaseFab_Initialize ()
 
void BaseFab_Finalize ()
 
Long TotalBytesAllocatedInFabs () noexcept
 
Long TotalBytesAllocatedInFabsHWM () noexcept
 
Long TotalCellsAllocatedInFabs () noexcept
 
Long TotalCellsAllocatedInFabsHWM () noexcept
 
void ResetTotalBytesAllocatedInFabsHWM () noexcept
 
void update_fab_stats (Long n, Long s, size_t szt) noexcept
 
void update_fab_stats (Long n, Long s, std::size_t szt) noexcept
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Array4< T > makeArray4 (T *p, Box const &bx, int ncomp) noexcept
 
template<typename T >
std::enable_if< std::is_arithmetic< T >::value >::type placementNew (T *const, Long)
 A Fortran Array-like Object BaseFab emulates the Fortran array concept. Useful operations can be performed upon BaseFabs in C++, and they provide a convenient interface to Fortran when it is necessary to retreat into that language. More...
 
template<typename T >
std::enable_if_t< std::is_trivially_default_constructible< T >::value &&!std::is_arithmetic< T >::value > placementNew (T *const ptr, Long n)
 
template<typename T >
std::enable_if_t<!std::is_trivially_default_constructible< T >::value > placementNew (T *const ptr, Long n)
 
template<typename T >
std::enable_if< std::is_trivially_destructible< T >::value >::type placementDelete (T *const, Long)
 
template<typename T >
std::enable_if<!std::is_trivially_destructible< T >::value >::type placementDelete (T *const ptr, Long n)
 
template<class Tto , class Tfrom >
AMREX_GPU_HOST_DEVICE void cast (BaseFab< Tto > &tofab, BaseFab< Tfrom > const &fromfab, Box const &bx, SrcComp scomp, DestComp dcomp, NumComps ncomp) noexcept
 
template<typename STRUCT , typename F , typename std::enable_if<(sizeof(STRUCT)<=36 *8) &&AMREX_IS_TRIVIALLY_COPYABLE(STRUCT) &&std::is_trivially_destructible< STRUCT >::value, int >::type FOO = 0>
void fill (BaseFab< STRUCT > &aos_fab, F &&f)
 
void setBC (const Box &bx, const Box &domain, int src_comp, int dest_comp, int ncomp, const Vector< BCRec > &bc_dom, Vector< BCRec > &bcr) noexcept
 Function for setting array of BCs. More...
 
std::ostream & operator<< (std::ostream &os, const BCRec &b)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void setBC (const Box &bx, const Box &domain, const BCRec &bc_dom, BCRec &bcr) noexcept
 Function for setting a BC. More...
 
void FillDomainBoundary (MultiFab &phi, const Geometry &geom, const Vector< BCRec > &bc)
 
std::ostream & operator<< (std::ostream &os, const Box &bx)
 Write an ASCII representation to the ostream. More...
 
std::istream & operator>> (std::istream &os, Box &bx)
 Read from istream. More...
 
void AllGatherBoxes (Vector< Box > &bxs, int n_extra_reserve)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box grow (const Box &b, int i) noexcept
 Grow Box in all directions by given amount. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box grow (const Box &b, const IntVect &v) noexcept
 Grow Box in each direction by specified amount. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box grow (const Box &b, int idir, int n_cell) noexcept
 Grow Box in direction idir be n_cell cells. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box grow (const Box &b, Direction d, int n_cell) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box growLo (const Box &b, int idir, int n_cell) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box growLo (const Box &b, Direction d, int n_cell) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box growHi (const Box &b, int idir, int n_cell) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box growHi (const Box &b, Direction d, int n_cell) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box coarsen (const Box &b, int ref_ratio) noexcept
 Coarsen Box by given (positive) refinement ratio. NOTE: if type(dir) = CELL centered: lo <- lo/ratio and hi <- hi/ratio. NOTE: if type(dir) = NODE centered: lo <- lo/ratio and hi <- hi/ratio + ((hiratio)==0 ? 0 : 1). That is, refinement of coarsened Box must contain the original Box. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box coarsen (const Box &b, const IntVect &ref_ratio) noexcept
 Coarsen Box by given (positive) refinement ratio. NOTE: if type(dir) = CELL centered: lo <- lo/ratio and hi <- hi/ratio. NOTE: if type(dir) = NODE centered: lo <- lo/ratio and hi <- hi/ratio + ((hiratio)==0 ? 0 : 1). That is, refinement of coarsened Box must contain the original Box. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box refine (const Box &b, int ref_ratio) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box refine (const Box &b, const IntVect &ref_ratio) noexcept
 Refine Box by given (positive) refinement ratio. NOTE: if type(dir) = CELL centered: lo <- lo*ratio and hi <- (hi+1)*ratio - 1. NOTE: if type(dir) = NODE centered: lo <- lo*ratio and hi <- hi*ratio. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box shift (const Box &b, int dir, int nzones) noexcept
 Return a Box with indices shifted by nzones in dir direction. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box shift (const Box &b, const IntVect &nzones) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box surroundingNodes (const Box &b, int dir) noexcept
 Returns a Box with NODE based coordinates in direction dir that encloses Box b. NOTE: equivalent to b.convert(dir,NODE) NOTE: error if b.type(dir) == NODE. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box surroundingNodes (const Box &b, Direction d) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box surroundingNodes (const Box &b) noexcept
 Returns a Box with NODE based coordinates in all directions that encloses Box b. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box convert (const Box &b, const IntVect &typ) noexcept
 Returns a Box with different type. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box convert (const Box &b, const IndexType &typ) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box enclosedCells (const Box &b, int dir) noexcept
 Returns a Box with CELL based coordinates in direction dir that is enclosed by b. NOTE: equivalent to b.convert(dir,CELL) NOTE: error if b.type(dir) == CELL. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box enclosedCells (const Box &b, Direction d) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box enclosedCells (const Box &b) noexcept
 Returns a Box with CELL based coordinates in all directions that is enclosed by b. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box bdryLo (const Box &b, int dir, int len=1) noexcept
 Returns the edge-centered Box (in direction dir) defining the low side of Box b. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box bdryHi (const Box &b, int dir, int len=1) noexcept
 Returns the edge-centered Box (in direction dir) defining the high side of Box b. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box bdryNode (const Box &b, Orientation face, int len=1) noexcept
 Similar to bdryLo and bdryHi except that it operates on the given face of box b. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box adjCellLo (const Box &b, int dir, int len=1) noexcept
 Returns the cell centered Box of length len adjacent to b on the low end along the coordinate direction dir. The return Box is identical to b in the other directions. The return Box and b have an empty intersection. NOTE: len >= 1 NOTE: Box retval = b.adjCellLo(b,dir,len) is equivalent to the following set of operations: Box retval(b); retval.convert(dir,Box::CELL); retval.setrange(dir,retval.smallEnd(dir)-len,len);. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box adjCellHi (const Box &b, int dir, int len=1) noexcept
 Similar to adjCellLo but builds an adjacent Box on the high end. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box adjCell (const Box &b, Orientation face, int len=1) noexcept
 Similar to adjCellLo and adjCellHi; operates on given face. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box minBox (const Box &b1, const Box &b2) noexcept
 Modify Box to that of the minimum Box containing both the original Box and the argument. Both Boxes must have identical type. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 lbound (Box const &box) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 ubound (Box const &box) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 begin (Box const &box) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 end (Box const &box) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 length (Box const &box) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 max_lbound (Box const &b1, Box const &b2) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 max_lbound (Box const &b1, Dim3 const &lo) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 min_ubound (Box const &b1, Box const &b2) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 min_ubound (Box const &b1, Dim3 const &hi) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box minBox (Box const &b1, Box const &b2, IndexType typ) noexcept
 
AMREX_FORCE_INLINE Box getIndexBounds (Box const &b1) noexcept
 
AMREX_FORCE_INLINE Box getIndexBounds (Box const &b1, Box const &b2) noexcept
 
template<class T , class ... Ts>
AMREX_FORCE_INLINE Box getIndexBounds (T const &b1, T const &b2, Ts const &... b3) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect getCell (Box const *boxes, int nboxes, Long icell) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box makeSlab (Box const &b, int direction, int slab_index) noexcept
 
std::ostream & operator<< (std::ostream &os, const BoxArray &ba)
 Write a BoxArray to an ostream in ASCII format. More...
 
BoxArray boxComplement (const Box &b1in, const Box &b2)
 Make a BoxArray from the the complement of b2 in b1in. More...
 
BoxArray complementIn (const Box &b, const BoxArray &ba)
 Make a BoxArray from the complement of BoxArray ba in Box b. More...
 
BoxArray intersect (const BoxArray &ba, const Box &b, int ng=0)
 Make a BoxArray from the intersection of Box b and BoxArray(+ghostcells). More...
 
BoxArray intersect (const BoxArray &ba, const Box &b, const IntVect &ng)
 
BoxArray intersect (const BoxArray &lhs, const BoxArray &rhs)
 Make a BoxArray from the intersection of two BoxArrays. More...
 
BoxList intersect (const BoxArray &ba, const BoxList &bl)
 Make a BoxList from the intersection of BoxArray and BoxList. More...
 
BoxArray convert (const BoxArray &ba, IndexType typ)
 
BoxArray convert (const BoxArray &ba, const IntVect &typ)
 
BoxArray coarsen (const BoxArray &ba, int ratio)
 
BoxArray coarsen (const BoxArray &ba, const IntVect &ratio)
 
BoxArray refine (const BoxArray &ba, int ratio)
 
BoxArray refine (const BoxArray &ba, const IntVect &ratio)
 
BoxList GetBndryCells (const BoxArray &ba, int ngrow)
 Find the ghost cells of a given BoxArray. More...
 
void readBoxArray (BoxArray &ba, std::istream &s, bool b=false)
 Read a BoxArray from a stream. If b is true, read in a special way. More...
 
bool match (const BoxArray &x, const BoxArray &y)
 Note that two BoxArrays that match are not necessarily equal. More...
 
std::ostream & operator<< (std::ostream &os, const BoxArray::RefID &id)
 
void intersect (BoxDomain &dest, const BoxDomain &fin, const Box &b)
 Compute the intersection of BoxDomain fin with Box b and place the result into BoxDomain dest. More...
 
void refine (BoxDomain &dest, const BoxDomain &fin, int ratio)
 Refine all Boxes in the domain by the refinement ratio and return the result in dest. More...
 
void accrete (BoxDomain &dest, const BoxDomain &fin, int sz=1)
 Grow each Box in BoxDomain fin by size sz and place the result into BoxDomain dest. More...
 
void coarsen (BoxDomain &dest, const BoxDomain &fin, int ratio)
 Coarsen all Boxes in the domain by the refinement ratio. The result is placed into a new BoxDomain. More...
 
BoxDomain complementIn (const Box &b, const BoxDomain &bl)
 Returns the complement of BoxDomain bl in Box b. More...
 
std::ostream & operator<< (std::ostream &os, const BoxDomain &bd)
 Output a BoxDomain to an ostream is ASCII format. More...
 
BoxList complementIn (const Box &b, const BoxList &bl)
 Returns a BoxList defining the complement of BoxList bl in Box b. More...
 
BoxList boxDiff (const Box &b1in, const Box &b2)
 Returns BoxList defining the compliment of b2 in b1in. More...
 
void boxDiff (BoxList &bl_diff, const Box &b1in, const Box &b2)
 
BoxList refine (const BoxList &bl, int ratio)
 Returns a new BoxList in which each Box is refined by the given ratio. More...
 
BoxList coarsen (const BoxList &bl, int ratio)
 Returns a new BoxList in which each Box is coarsened by the given ratio. More...
 
BoxList intersect (const BoxList &bl, const Box &b)
 Returns a BoxList defining the intersection of bl with b. More...
 
BoxList accrete (const BoxList &bl, int sz)
 Returns a new BoxList in which each Box is grown by the given size. More...
 
BoxList removeOverlap (const BoxList &bl)
 Return BoxList which covers the same area but has no overlapping boxes. More...
 
std::ostream & operator<< (std::ostream &os, const BoxList &blist)
 Output a BoxList to an ostream in ASCII format. More...
 
std::ostream & operator<< (std::ostream &os, const CoordSys &c)
 
std::istream & operator>> (std::istream &is, CoordSys &c)
 
AMREX_GPU_HOST_DEVICE void amrex_setvol (Box const &bx, Array4< Real > const &vol, GpuArray< Real, 1 > const &offset, GpuArray< Real, 1 > const &dx, const int coord) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_setarea (Box const &bx, Array4< Real > const &area, GpuArray< Real, 1 > const &offset, GpuArray< Real, 1 > const &dx, const int, const int coord) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_setdloga (Box const &bx, Array4< Real > const &dloga, GpuArray< Real, 1 > const &offset, GpuArray< Real, 1 > const &dx, const int, const int coord) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_setvol (Box const &bx, Array4< Real > const &vol, GpuArray< Real, 2 > const &offset, GpuArray< Real, 2 > const &dx, const int coord) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_setarea (Box const &bx, Array4< Real > const &area, GpuArray< Real, 2 > const &offset, GpuArray< Real, 2 > const &dx, const int dir, const int coord) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_setdloga (Box const &bx, Array4< Real > const &dloga, GpuArray< Real, 2 > const &offset, GpuArray< Real, 2 > const &dx, const int dir, const int coord) noexcept
 
template<typename T , typename std::enable_if< std::is_same< T, Dim3 >::value||std::is_same< T, XDim3 >::value >::type * = nullptr>
std::ostream & operator<< (std::ostream &os, const T &d)
 
static void knapsack (const std::vector< Long > &wgts, int nprocs, std::vector< std::vector< int > > &result, Real &efficiency, bool do_full_knapsack, int nmax)
 
static void Distribute (const std::vector< SFCToken > &tokens, const std::vector< Long > &wgts, int nprocs, Real volpercpu, std::vector< std::vector< int > > &v)
 
std::ostream & operator<< (std::ostream &os, const DistributionMapping &pmap)
 Our output operator. More...
 
std::ostream & operator<< (std::ostream &os, const DistributionMapping::RefID &id)
 
template<typename T , typename std::enable_if<!IsBaseFab< T >::value, int >::type = 0>
Long nBytesOwned (T const &) noexcept
 
template<typename T >
Long nBytesOwned (BaseFab< T > const &fab) noexcept
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void Copy (FabArray< FAB > &dst, FabArray< FAB > const &src, int srccomp, int dstcomp, int numcomp, int nghost)
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void Copy (FabArray< FAB > &dst, FabArray< FAB > const &src, int srccomp, int dstcomp, int numcomp, const IntVect &nghost)
 
std::ostream & operator<< (std::ostream &os, const FabArrayBase::BDKey &id)
 
ArenaThe_FA_Arena ()
 
template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
FAB::value_type ReduceSum (FabArray< FAB > const &fa, int nghost, F &&f)
 
template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
FAB::value_type ReduceSum (FabArray< FAB > const &fa, IntVect const &nghost, F &&f)
 
template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type ReduceSum (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, int nghost, F &&f)
 
template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type ReduceSum (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, IntVect const &nghost, F &&f)
 
template<class FAB1 , class FAB2 , class FAB3 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type ReduceSum (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, FabArray< FAB3 > const &fa3, int nghost, F &&f)
 
template<class FAB1 , class FAB2 , class FAB3 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type ReduceSum (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, FabArray< FAB3 > const &fa3, IntVect const &nghost, F &&f)
 
template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
FAB::value_type ReduceMin (FabArray< FAB > const &fa, int nghost, F &&f)
 
template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
FAB::value_type ReduceMin (FabArray< FAB > const &fa, IntVect const &nghost, F &&f)
 
template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type ReduceMin (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, int nghost, F &&f)
 
template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type ReduceMin (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, IntVect const &nghost, F &&f)
 
template<class FAB1 , class FAB2 , class FAB3 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type ReduceMin (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, FabArray< FAB3 > const &fa3, int nghost, F &&f)
 
template<class FAB1 , class FAB2 , class FAB3 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type ReduceMin (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, FabArray< FAB3 > const &fa3, IntVect const &nghost, F &&f)
 
template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
FAB::value_type ReduceMax (FabArray< FAB > const &fa, int nghost, F &&f)
 
template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
FAB::value_type ReduceMax (FabArray< FAB > const &fa, IntVect const &nghost, F &&f)
 
template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type ReduceMax (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, int nghost, F &&f)
 
template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type ReduceMax (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, IntVect const &nghost, F &&f)
 
template<class FAB1 , class FAB2 , class FAB3 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type ReduceMax (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, FabArray< FAB3 > const &fa3, int nghost, F &&f)
 
template<class FAB1 , class FAB2 , class FAB3 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type ReduceMax (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, FabArray< FAB3 > const &fa3, IntVect const &nghost, F &&f)
 
template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
bool ReduceLogicalAnd (FabArray< FAB > const &fa, int nghost, F &&f)
 
template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
bool ReduceLogicalAnd (FabArray< FAB > const &fa, IntVect const &nghost, F &&f)
 
template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
bool ReduceLogicalAnd (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, int nghost, F &&f)
 
template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
bool ReduceLogicalAnd (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, IntVect const &nghost, F &&f)
 
template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
bool ReduceLogicalOr (FabArray< FAB > const &fa, int nghost, F &&f)
 
template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
bool ReduceLogicalOr (FabArray< FAB > const &fa, IntVect const &nghost, F &&f)
 
template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
bool ReduceLogicalOr (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, int nghost, F &&f)
 
template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
bool ReduceLogicalOr (FabArray< FAB1 > const &fa1, FabArray< FAB2 > const &fa2, IntVect const &nghost, F &&f)
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void printCell (FabArray< FAB > const &mf, const IntVect &cell, int comp=-1, const IntVect &ng=IntVect::TheZeroVector())
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void Add (FabArray< FAB > &dst, FabArray< FAB > const &src, int srccomp, int dstcomp, int numcomp, int nghost)
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void Add (FabArray< FAB > &dst, FabArray< FAB > const &src, int srccomp, int dstcomp, int numcomp, const IntVect &nghost)
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void Subtract (FabArray< FAB > &dst, FabArray< FAB > const &src, int srccomp, int dstcomp, int numcomp, int nghost)
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void Subtract (FabArray< FAB > &dst, FabArray< FAB > const &src, int srccomp, int dstcomp, int numcomp, const IntVect &nghost)
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void Multiply (FabArray< FAB > &dst, FabArray< FAB > const &src, int srccomp, int dstcomp, int numcomp, int nghost)
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void Multiply (FabArray< FAB > &dst, FabArray< FAB > const &src, int srccomp, int dstcomp, int numcomp, const IntVect &nghost)
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void Divide (FabArray< FAB > &dst, FabArray< FAB > const &src, int srccomp, int dstcomp, int numcomp, int nghost)
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void Divide (FabArray< FAB > &dst, FabArray< FAB > const &src, int srccomp, int dstcomp, int numcomp, const IntVect &nghost)
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void Abs (FabArray< FAB > &fa, int icomp, int numcomp, int nghost)
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void Abs (FabArray< FAB > &fa, int icomp, int numcomp, const IntVect &nghost)
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void prefetchToHost (FabArray< FAB > const &fa, const bool synchronous=true)
 
template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void prefetchToDevice (FabArray< FAB > const &fa, const bool synchronous=true)
 
template<class FAB , class IFAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value && IsBaseFab<IFAB>::value>>
void OverrideSync (FabArray< FAB > &fa, FabArray< IFAB > const &msk, const Periodicity &period)
 
template<class FAB , class foo = std::enable_if_t<IsBaseFab<FAB>::value>>
void dtoh_memcpy (FabArray< FAB > &dst, FabArray< FAB > const &src, int scomp, int dcomp, int ncomp)
 
template<class FAB , class foo = std::enable_if_t<IsBaseFab<FAB>::value>>
void dtoh_memcpy (FabArray< FAB > &dst, FabArray< FAB > const &src)
 
template<class FAB , class foo = std::enable_if_t<IsBaseFab<FAB>::value>>
void htod_memcpy (FabArray< FAB > &dst, FabArray< FAB > const &src, int scomp, int dcomp, int ncomp)
 
template<class FAB , class foo = std::enable_if_t<IsBaseFab<FAB>::value>>
void htod_memcpy (FabArray< FAB > &dst, FabArray< FAB > const &src)
 
template<class FAB , class foo = std::enable_if_t<IsBaseFab<FAB>::value>>
IntVect indexFromValue (FabArray< FAB > const &mf, int comp, IntVect const &nghost, typename FAB::value_type value)
 
std::ostream & operator<< (std::ostream &os, const IntDescriptor &id)
 
std::istream & operator>> (std::istream &is, IntDescriptor &id)
 
static const intselectOrdering (int prec, int ordering)
 
void ONES_COMP_NEG (Long &n, int nb, Long incr)
 
int _pd_get_bit (char const *base, int offs, int nby, const int *ord)
 
static Long _pd_extract_field (char const *in, int offs, int nbi, int nby, const int *ord)
 
static void _pd_btrvout (char *out, Long nb, Long nitems)
 
void _pd_insert_field (Long in_long, int nb, char *out, int offs, int l_order, int l_bytes)
 
void _pd_set_bit (char *base, int offs)
 
static void _pd_reorder (char *arr, Long nitems, int nbytes, const int *ord)
 
static void permute_real_word_order (void *out, const void *in, Long nitems, const int *outord, const int *inord, int REALSIZE)
 
void PD_fconvert (void *out, const void *in, Long nitems, int boffs, const Long *outfor, const int *outord, const Long *infor, const int *inord, int l_order, int l_bytes, int onescmp)
 
static void PD_fixdenormals (void *out, Long nitems, const Long *outfor, const int *outord)
 
std::ostream & operator<< (std::ostream &os, const RealDescriptor &rd)
 
std::istream & operator>> (std::istream &is, RealDescriptor &rd)
 
static void PD_convert (void *out, const void *in, Long nitems, int boffs, const RealDescriptor &ord, const RealDescriptor &ird, const IntDescriptor &iid, int onescmp=0)
 
std::ostream & operator<< (std::ostream &os, const FArrayBox &f)
 
std::istream & operator>> (std::istream &is, FArrayBox &f)
 
void fab_filcc (Box const &bx, Array4< Real > const &qn, int ncomp, Box const &domain, Real const *, Real const *, BCRec const *bcn)
 
void fab_filnd (Box const &bx, Array4< Real > const &qn, int ncomp, Box const &domain, Real const *, Real const *, BCRec const *bcn)
 
std::ostream & operator<< (std::ostream &, const Geometry &)
 Nice ASCII output. More...
 
std::istream & operator>> (std::istream &, Geometry &)
 Nice ASCII input. More...
 
Geometry coarsen (Geometry const &fine, IntVect const &rr)
 
Geometry coarsen (Geometry const &fine, int rr)
 
Geometry refine (Geometry const &crse, IntVect const &rr)
 
Geometry refine (Geometry const &crse, int rr)
 
const GeometryDefaultGeometry ()
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINEnorm (const GpuComplex< T > &a_z) noexcept
 Return the norm (magnitude squared) of a complex number. More...
 
template<typename U >
std::ostream & operator<< (std::ostream &out, const GpuComplex< U > &c)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator+ (const GpuComplex< T > &a_x)
 Identity operation on a complex number. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator- (const GpuComplex< T > &a_x)
 Negate a complex number. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator- (const GpuComplex< T > &a_x, const GpuComplex< T > &a_y) noexcept
 Subtract two complex numbers. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator- (const GpuComplex< T > &a_x, const T &a_y) noexcept
 Subtract a real number from a complex one. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator- (const T &a_x, const GpuComplex< T > &a_y) noexcept
 Subtract a complex number from a real one. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator+ (const GpuComplex< T > &a_x, const GpuComplex< T > &a_y) noexcept
 Add two complex numbers. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator+ (const GpuComplex< T > &a_x, const T &a_y) noexcept
 Add a real number to a complex one. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator+ (const T &a_x, const GpuComplex< T > &a_y) noexcept
 Add a complex number to a real one. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator* (const GpuComplex< T > &a_x, const GpuComplex< T > &a_y) noexcept
 Multiply two complex numbers. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator* (const GpuComplex< T > &a_x, const T &a_y) noexcept
 Multiply a complex number by a real one. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator* (const T &a_x, const GpuComplex< T > &a_y) noexcept
 Multiply a real number by a complex one. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator/ (const GpuComplex< T > &a_x, const GpuComplex< T > &a_y) noexcept
 Divide a complex number by another one. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator/ (const GpuComplex< T > &a_x, const T &a_y) noexcept
 Divide a complex number by a real. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > operator/ (const T &a_x, const GpuComplex< T > &a_y) noexcept
 Divide a real number by a complex one. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > polar (const T &a_r, const T &a_theta) noexcept
 Return a complex number given its polar representation. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > exp (const GpuComplex< T > &a_z) noexcept
 Complex expotential function. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINEabs (const GpuComplex< T > &a_z) noexcept
 Return the absolute value of a complex number. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > sqrt (const GpuComplex< T > &a_z) noexcept
 Return the square root of a complex number. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINEarg (const GpuComplex< T > &a_z) noexcept
 Return the angle of a complex number's polar representation. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > log (const GpuComplex< T > &a_z) noexcept
 Complex natural logarithm function. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > pow (const GpuComplex< T > &a_z, const T &a_y) noexcept
 Raise a complex number to a (real) power. More...
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex< T > pow (const GpuComplex< T > &a_z, int a_n) noexcept
 Raise a complex number to an integer power. More...
 
gpuError_t gpuGetLastError ()
 
const char * gpuGetErrorString (gpuError_t error)
 
template<class L , class... Lambdas>
AMREX_GPU_GLOBAL void launch_global (L f0, Lambdas... fs)
 
template<class L >
AMREX_GPU_DEVICE void call_device (L &&f0) noexcept
 
template<class L , class... Lambdas>
AMREX_GPU_DEVICE void call_device (L &&f0, Lambdas &&... fs) noexcept
 
template<class L >
void launch_host (L &&f0) noexcept
 
template<class L , class... Lambdas>
void launch_host (L &&f0, Lambdas &&... fs) noexcept
 
template<typename T , typename L >
void launch (T const &n, L &&f, std::size_t=0) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void For (T n, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void For (Gpu::KernelInfo const &, T n, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void ParallelFor (T n, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void ParallelFor (Gpu::KernelInfo const &, T n, L &&f) noexcept
 
template<typename L >
void For (Box const &box, L &&f) noexcept
 
template<typename L >
void For (Gpu::KernelInfo const &, Box const &box, L &&f) noexcept
 
template<typename L >
void ParallelFor (Box const &box, L &&f) noexcept
 
template<typename L >
void ParallelFor (Gpu::KernelInfo const &, Box const &box, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void For (Box const &box, T ncomp, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void For (Gpu::KernelInfo const &, Box const &box, T ncomp, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void ParallelFor (Box const &box, T ncomp, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void ParallelFor (Gpu::KernelInfo const &, Box const &box, T ncomp, L &&f) noexcept
 
template<typename L1 , typename L2 >
void For (Box const &box1, Box const &box2, L1 &&f1, L2 &&f2) noexcept
 
template<typename L1 , typename L2 >
void For (Gpu::KernelInfo const &, Box const &box1, Box const &box2, L1 &&f1, L2 &&f2) noexcept
 
template<typename L1 , typename L2 , typename L3 >
void For (Box const &box1, Box const &box2, Box const &box3, L1 &&f1, L2 &&f2, L3 &&f3) noexcept
 
template<typename L1 , typename L2 , typename L3 >
void For (Gpu::KernelInfo const &, Box const &box1, Box const &box2, Box const &box3, L1 &&f1, L2 &&f2, L3 &&f3) noexcept
 
template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void For (Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2) noexcept
 
template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void For (Gpu::KernelInfo const &, Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2) noexcept
 
template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void For (Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2, Box const &box3, T3 ncomp3, L3 &&f3) noexcept
 
template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void For (Gpu::KernelInfo const &, Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2, Box const &box3, T3 ncomp3, L3 &&f3) noexcept
 
template<typename L1 , typename L2 >
void ParallelFor (Box const &box1, Box const &box2, L1 &&f1, L2 &&f2) noexcept
 
template<typename L1 , typename L2 >
void ParallelFor (Gpu::KernelInfo const &, Box const &box1, Box const &box2, L1 &&f1, L2 &&f2) noexcept
 
template<typename L1 , typename L2 , typename L3 >
void ParallelFor (Box const &box1, Box const &box2, Box const &box3, L1 &&f1, L2 &&f2, L3 &&f3) noexcept
 
template<typename L1 , typename L2 , typename L3 >
void ParallelFor (Gpu::KernelInfo const &, Box const &box1, Box const &box2, Box const &box3, L1 &&f1, L2 &&f2, L3 &&f3) noexcept
 
template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void ParallelFor (Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2) noexcept
 
template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void ParallelFor (Gpu::KernelInfo const &, Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2) noexcept
 
template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void ParallelFor (Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2, Box const &box3, T3 ncomp3, L3 &&f3) noexcept
 
template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void ParallelFor (Gpu::KernelInfo const &, Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2, Box const &box3, T3 ncomp3, L3 &&f3) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void HostDeviceParallelFor (T n, L &&f) noexcept
 
template<typename L >
void HostDeviceParallelFor (Box const &box, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void HostDeviceParallelFor (Box const &box, T ncomp, L &&f) noexcept
 
template<typename L1 , typename L2 >
void HostDeviceParallelFor (Box const &box1, Box const &box2, L1 &&f1, L2 &&f2) noexcept
 
template<typename L1 , typename L2 , typename L3 >
void HostDeviceParallelFor (Box const &box1, Box const &box2, Box const &box3, L1 &&f1, L2 &&f2, L3 &&f3) noexcept
 
template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void HostDeviceParallelFor (Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2) noexcept
 
template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void HostDeviceParallelFor (Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2, Box const &box3, T3 ncomp3, L3 &&f3) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void HostDeviceFor (T n, L &&f) noexcept
 
template<typename L >
void HostDeviceFor (Box const &box, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void HostDeviceFor (Box const &box, T ncomp, L &&f) noexcept
 
template<typename L1 , typename L2 >
void HostDeviceFor (Box const &box1, Box const &box2, L1 &&f1, L2 &&f2) noexcept
 
template<typename L1 , typename L2 , typename L3 >
void HostDeviceFor (Box const &box1, Box const &box2, Box const &box3, L1 &&f1, L2 &&f2, L3 &&f3) noexcept
 
template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void HostDeviceFor (Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2) noexcept
 
template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void HostDeviceFor (Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2, Box const &box3, T3 ncomp3, L3 &&f3) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void HostDeviceParallelFor (Gpu::KernelInfo const &, T n, L &&f) noexcept
 
template<typename L >
void HostDeviceParallelFor (Gpu::KernelInfo const &, Box const &box, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void HostDeviceParallelFor (Gpu::KernelInfo const &, Box const &box, T ncomp, L &&f) noexcept
 
template<typename L1 , typename L2 >
void HostDeviceParallelFor (Gpu::KernelInfo const &, Box const &box1, Box const &box2, L1 &&f1, L2 &&f2) noexcept
 
template<typename L1 , typename L2 , typename L3 >
void HostDeviceParallelFor (Gpu::KernelInfo const &, Box const &box1, Box const &box2, Box const &box3, L1 &&f1, L2 &&f2, L3 &&f3) noexcept
 
template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void HostDeviceParallelFor (Gpu::KernelInfo const &, Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2) noexcept
 
template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void HostDeviceParallelFor (Gpu::KernelInfo const &, Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2, Box const &box3, T3 ncomp3, L3 &&f3) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void HostDeviceFor (Gpu::KernelInfo const &, T n, L &&f) noexcept
 
template<typename L >
void HostDeviceFor (Gpu::KernelInfo const &, Box const &box, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void HostDeviceFor (Gpu::KernelInfo const &, Box const &box, T ncomp, L &&f) noexcept
 
template<typename L1 , typename L2 >
void HostDeviceFor (Gpu::KernelInfo const &, Box const &box1, Box const &box2, L1 &&f1, L2 &&f2) noexcept
 
template<typename L1 , typename L2 , typename L3 >
void HostDeviceFor (Gpu::KernelInfo const &, Box const &box1, Box const &box2, Box const &box3, L1 &&f1, L2 &&f2, L3 &&f3) noexcept
 
template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void HostDeviceFor (Gpu::KernelInfo const &, Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2) noexcept
 
template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void HostDeviceFor (Gpu::KernelInfo const &, Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2, Box const &box3, T3 ncomp3, L3 &&f3) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void ParallelForRNG (T n, L &&f) noexcept
 
template<typename L >
void ParallelForRNG (Box const &box, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void ParallelForRNG (Box const &box, T ncomp, L &&f) noexcept
 
template<typename L >
void single_task (L &&f) noexcept
 
template<typename L >
void single_task (gpuStream_t stream, L &&f) noexcept
 
template<typename L >
void launch (int nblocks, int nthreads_per_block, std::size_t shared_mem_bytes, gpuStream_t stream, L &&f) noexcept
 
template<typename L >
void launch (int nblocks, int nthreads_per_block, gpuStream_t stream, L &&f) noexcept
 
template<typename T , typename L >
void launch (T const &n, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t< MaybeDeviceRunnable< L >::value > ParallelFor (Gpu::KernelInfo const &, T n, L &&f) noexcept
 
template<typename L >
std::enable_if_t< MaybeDeviceRunnable< L >::value > ParallelFor (Gpu::KernelInfo const &, Box const &box, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t< MaybeDeviceRunnable< L >::value > ParallelFor (Gpu::KernelInfo const &, Box const &box, T ncomp, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t< MaybeDeviceRunnable< L >::value > ParallelForRNG (T n, L &&f) noexcept
 
template<typename L >
std::enable_if_t< MaybeDeviceRunnable< L >::value > ParallelForRNG (Box const &box, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t< MaybeDeviceRunnable< L >::value > ParallelForRNG (Box const &box, T ncomp, L &&f) noexcept
 
template<typename L1 , typename L2 >
std::enable_if_t< MaybeDeviceRunnable< L1 >::value &&MaybeDeviceRunnable< L2 >::value > ParallelFor (Gpu::KernelInfo const &, Box const &box1, Box const &box2, L1 &&f1, L2 &&f2) noexcept
 
template<typename L1 , typename L2 , typename L3 >
std::enable_if_t< MaybeDeviceRunnable< L1 >::value &&MaybeDeviceRunnable< L2 >::value &&MaybeDeviceRunnable< L3 >::value > ParallelFor (Gpu::KernelInfo const &, Box const &box1, Box const &box2, Box const &box3, L1 &&f1, L2 &&f2, L3 &&f3) noexcept
 
template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
std::enable_if_t< MaybeDeviceRunnable< L1 >::value &&MaybeDeviceRunnable< L2 >::value > ParallelFor (Gpu::KernelInfo const &, Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2) noexcept
 
template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
std::enable_if_t< MaybeDeviceRunnable< L1 >::value &&MaybeDeviceRunnable< L2 >::value &&MaybeDeviceRunnable< L3 >::value > ParallelFor (Gpu::KernelInfo const &, Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2, Box const &box3, T3 ncomp3, L3 &&f3) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t< MaybeHostDeviceRunnable< L >::value > HostDeviceParallelFor (Gpu::KernelInfo const &info, T n, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t< MaybeHostDeviceRunnable< L >::value > HostDeviceParallelFor (T n, L &&f) noexcept
 
template<typename L >
std::enable_if_t< MaybeHostDeviceRunnable< L >::value > HostDeviceParallelFor (Gpu::KernelInfo const &info, Box const &box, L &&f) noexcept
 
template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t< MaybeHostDeviceRunnable< L >::value > HostDeviceParallelFor (Gpu::KernelInfo const &info, Box const &box, T ncomp, L &&f) noexcept
 
template<typename L1 , typename L2 >
std::enable_if_t< MaybeHostDeviceRunnable< L1 >::value &&MaybeHostDeviceRunnable< L2 >::value > HostDeviceParallelFor (Gpu::KernelInfo const &info, Box const &box1, Box const &box2, L1 &&f1, L2 &&f2) noexcept
 
template<typename L1 , typename L2 , typename L3 >
std::enable_if_t< MaybeHostDeviceRunnable< L1 >::value &&MaybeHostDeviceRunnable< L2 >::value &&MaybeHostDeviceRunnable< L3 >::value > HostDeviceParallelFor (Gpu::KernelInfo const &info, Box const &box1, Box const &box2, Box const &box3, L1 &&f1, L2 &&f2, L3 &&f3) noexcept
 
template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
std::enable_if_t< MaybeHostDeviceRunnable< L1 >::value &&MaybeHostDeviceRunnable< L2 >::value > HostDeviceParallelFor (Gpu::KernelInfo const &info, Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2) noexcept
 
template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
std::enable_if_t< MaybeHostDeviceRunnable< L1 >::value &&MaybeHostDeviceRunnable< L2 >::value &&MaybeHostDeviceRunnable< L3 >::value > HostDeviceParallelFor (Gpu::KernelInfo const &info, Box const &box1, T1 ncomp1, L1 &&f1, Box const &box2, T2 ncomp2, L2 &&f2, Box const &box3, T3 ncomp3, L3 &&f3) noexcept
 
template<class L >
AMREX_GPU_GLOBAL void launch_global (L f0)
 
template<int amrex_launch_bounds_max_threads, class L >
 __launch_bounds__ (amrex_launch_bounds_max_threads) AMREX_GPU_GLOBAL void launch_global(L f0)
 
template<typename T , typename std::enable_if< std::is_integral< T >::value, int >::type = 0>
bool isEmpty (T n) noexcept
 
AMREX_FORCE_INLINE bool isEmpty (Box const &b) noexcept
 
std::ostream & operator<< (std::ostream &os, const dim3 &d)
 
std::unique_ptr< iMultiFabOwnerMask (FabArrayBase const &mf, const Periodicity &period, const IntVect &ngrow)
 
std::ostream & operator<< (std::ostream &os, const IndexType &itype)
 Write an IndexType to an ostream in ASCII. More...
 
std::istream & operator>> (std::istream &is, IndexType &itype)
 Read an IndexType from an istream. More...
 
std::int16_t swapBytes (std::int16_t val)
 
std::int32_t swapBytes (std::int32_t val)
 
std::int64_t swapBytes (std::int64_t val)
 
std::uint16_t swapBytes (std::uint16_t val)
 
std::uint32_t swapBytes (std::uint32_t val)
 
std::uint64_t swapBytes (std::uint64_t val)
 
template<typename To , typename From >
void writeIntData (const From *data, std::size_t size, std::ostream &os, const amrex::IntDescriptor &id)
 
template<typename To , typename From >
void readIntData (To *data, std::size_t size, std::istream &is, const amrex::IntDescriptor &id)
 
std::ostream & operator<< (std::ostream &os, const IntVect &p)
 
std::istream & operator>> (std::istream &is, IntVect &iv)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int coarsen (int i, int ratio) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect operator+ (int s, const IntVect &p) noexcept
 Returns p + s. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE AMREX_GPU_HOST_DEVICE IntVect operator- (int s, const IntVect &p) noexcept
 Returns -p + s. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect operator* (int s, const IntVect &p) noexcept
 Returns p * s. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect min (const IntVect &p1, const IntVect &p2) noexcept
 Returns the IntVect that is the component-wise minimum of two argument IntVects. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect elemwiseMin (const IntVect &p1, const IntVect &p2) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect max (const IntVect &p1, const IntVect &p2) noexcept
 Returns the IntVect that is the component-wise maximum of two argument IntVects. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect elemwiseMax (const IntVect &p1, const IntVect &p2) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect BASISV (int dir) noexcept
 Returns a basis vector in the given coordinate direction; eg. IntVect BASISV(1) == (0,1,0). Note that the coordinate directions are zero based. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect scale (const IntVect &p, int s) noexcept
 Returns a IntVect obtained by multiplying each of the components of this IntVect by s. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect reflect (const IntVect &a, int ref_ix, int idir) noexcept
 Returns an IntVect that is the reflection of input in the plane which passes through ref_ix and normal to the coordinate direction idir. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect diagShift (const IntVect &p, int s) noexcept
 Returns IntVect obtained by adding s to each of the components of this IntVect. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect coarsen (const IntVect &p, int s) noexcept
 Returns an IntVect that is the component-wise integer projection of p by s. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect coarsen (const IntVect &p1, const IntVect &p2) noexcept
 Returns an IntVect which is the component-wise integer projection of IntVect p1 by IntVect p2. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 refine (Dim3 const &coarse, IntVect const &ratio) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 coarsen (Dim3 const &fine, IntVect const &ratio) noexcept
 
template<class F >
AMREX_GPU_HOST_DEVICE void Loop (Dim3 lo, Dim3 hi, F &&f) noexcept
 
template<class F >
AMREX_GPU_HOST_DEVICE void Loop (Dim3 lo, Dim3 hi, int ncomp, F &&f) noexcept
 
template<class F >
AMREX_GPU_HOST_DEVICE void LoopConcurrent (Dim3 lo, Dim3 hi, F &&f) noexcept
 
template<class F >
AMREX_GPU_HOST_DEVICE void LoopConcurrent (Dim3 lo, Dim3 hi, int ncomp, F &&f) noexcept
 
template<class F >
AMREX_GPU_HOST_DEVICE void Loop (Box const &bx, F &&f) noexcept
 
template<class F >
AMREX_GPU_HOST_DEVICE void Loop (Box const &bx, int ncomp, F &&f) noexcept
 
template<class F >
AMREX_GPU_HOST_DEVICE void LoopConcurrent (Box const &bx, F &&f) noexcept
 
template<class F >
AMREX_GPU_HOST_DEVICE void LoopConcurrent (Box const &bx, int ncomp, F &&f) noexcept
 
template<class F >
void LoopOnCpu (Dim3 lo, Dim3 hi, F &&f) noexcept
 
template<class F >
void LoopOnCpu (Dim3 lo, Dim3 hi, int ncomp, F &&f) noexcept
 
template<class F >
void LoopConcurrentOnCpu (Dim3 lo, Dim3 hi, F &&f) noexcept
 
template<class F >
void LoopConcurrentOnCpu (Dim3 lo, Dim3 hi, int ncomp, F &&f) noexcept
 
template<class F >
void LoopOnCpu (Box const &bx, F &&f) noexcept
 
template<class F >
void LoopOnCpu (Box const &bx, int ncomp, F &&f) noexcept
 
template<class F >
void LoopConcurrentOnCpu (Box const &bx, F &&f) noexcept
 
template<class F >
void LoopConcurrentOnCpu (Box const &bx, int ncomp, F &&f) noexcept
 
AMREX_GPU_HOST_DEVICE double abs (double)
 
AMREX_GPU_HOST_DEVICE float abs (float)
 
AMREX_GPU_HOST_DEVICE long double abs (long double)
 
AMREX_GPU_HOST_DEVICE int abs (int)
 
AMREX_GPU_HOST_DEVICE long abs (long)
 
AMREX_GPU_HOST_DEVICE long long abs (long long)
 
std::ostream & operator<< (std::ostream &os, const MemProfiler::Bytes &bytes)
 
std::ostream & operator<< (std::ostream &os, const MemProfiler::Builds &builds)
 
void InterpAddBox (MultiFabCopyDescriptor &fabCopyDesc, BoxList *returnUnfilledBoxes, Vector< FillBoxId > &returnedFillBoxIds, const Box &subbox, MultiFabId faid1, MultiFabId faid2, Real t1, Real t2, Real t, int src_comp, int dest_comp, int num_comp, bool extrap)
 
void InterpFillFab (MultiFabCopyDescriptor &fabCopyDesc, const Vector< FillBoxId > &fillBoxIds, MultiFabId faid1, MultiFabId faid2, FArrayBox &dest, Real t1, Real t2, Real t, int src_comp, int dest_comp, int num_comp, bool extrap)
 
bool TilingIfNotGPU () noexcept
 
bool isMFIterSafe (const FabArrayBase &x, const FabArrayBase &y)
 
void GccPlacaterMF ()
 
void average_node_to_cellcenter (MultiFab &cc, int dcomp, const MultiFab &nd, int scomp, int ncomp, int ngrow=0)
 Average nodal-based MultiFab onto cell-centered MultiFab. More...
 
void average_edge_to_cellcenter (MultiFab &cc, int dcomp, const Vector< const MultiFab * > &edge, int ngrow)
 
void average_face_to_cellcenter (MultiFab &cc, int dcomp, const Vector< const MultiFab * > &fc, int ngrow=0)
 Average face-based MultiFab onto cell-centered MultiFab. More...
 
void average_face_to_cellcenter (MultiFab &cc, const Vector< const MultiFab * > &fc, const Geometry &geom)
 
void average_face_to_cellcenter (MultiFab &cc, int dcomp, const Array< const MultiFab *, AMREX_SPACEDIM > &fc, int ngrow)
 
void average_face_to_cellcenter (MultiFab &cc, const Array< const MultiFab *, AMREX_SPACEDIM > &fc, const Geometry &geom)
 
void average_cellcenter_to_face (const Vector< MultiFab * > &fc, const MultiFab &cc, const Geometry &geom, int ncomp=1, bool use_harmonic_averaging=false)
 Average cell-centered MultiFab onto face-based MultiFab. More...
 
void average_cellcenter_to_face (const Array< MultiFab *, AMREX_SPACEDIM > &fc, const MultiFab &cc, const Geometry &geom, int ncomp, bool use_harmonic_averaging)
 
void average_down (const MultiFab &S_fine, MultiFab &S_crse, const Geometry &fgeom, const Geometry &cgeom, int scomp, int ncomp, int rr)
 
void average_down (const MultiFab &S_fine, MultiFab &S_crse, const Geometry &fgeom, const Geometry &cgeom, int scomp, int ncomp, const IntVect &ratio)
 
void average_down (const MultiFab &S_fine, MultiFab &S_crse, int scomp, int ncomp, int rr)
 
void sum_fine_to_coarse (const MultiFab &S_fine, MultiFab &S_crse, int scomp, int ncomp, const IntVect &ratio, const Geometry &cgeom, const Geometry &)
 
void average_down (const MultiFab &S_fine, MultiFab &S_crse, int scomp, int ncomp, const IntVect &ratio)
 
void average_down_faces (const Vector< const MultiFab * > &fine, const Vector< MultiFab * > &crse, const IntVect &ratio, int ngcrse=0)
 Average fine face-based MultiFab onto crse face-based MultiFab. More...
 
void average_down_faces (const Vector< const MultiFab * > &fine, const Vector< MultiFab * > &crse, int ratio, int ngcrse)
 
void average_down_faces (const Array< const MultiFab *, AMREX_SPACEDIM > &fine, const Array< MultiFab *, AMREX_SPACEDIM > &crse, int ratio, int ngcrse)
 
void average_down_faces (const Array< const MultiFab *, AMREX_SPACEDIM > &fine, const Array< MultiFab *, AMREX_SPACEDIM > &crse, const IntVect &ratio, int ngcrse)
 
void average_down_faces (const MultiFab &fine, MultiFab &crse, const IntVect &ratio, int ngcrse)
 
void average_down_faces (const Array< const MultiFab *, AMREX_SPACEDIM > &fine, const Array< MultiFab *, AMREX_SPACEDIM > &crse, const IntVect &ratio, const Geometry &crse_geom)
 
void average_down_faces (const MultiFab &fine, MultiFab &crse, const IntVect &ratio, const Geometry &crse_geom)
 
void average_down_edges (const Vector< const MultiFab * > &fine, const Vector< MultiFab * > &crse, const IntVect &ratio, int ngcrse=0)
 Average fine edge-based MultiFab onto crse edge-based MultiFab. More...
 
void average_down_edges (const Array< const MultiFab *, AMREX_SPACEDIM > &fine, const Array< MultiFab *, AMREX_SPACEDIM > &crse, const IntVect &ratio, int ngcrse)
 
void average_down_edges (const MultiFab &fine, MultiFab &crse, const IntVect &ratio, int ngcrse)
 
void print_state (const MultiFab &mf, const IntVect &cell, const int n=-1, const IntVect &ng=IntVect::TheZeroVector())
 Output state data for a single zone. More...
 
void writeFabs (const MultiFab &mf, const std::string &name)
 Write each fab individually. More...
 
void writeFabs (const MultiFab &mf, int comp, int ncomp, const std::string &name)
 
MultiFab ToMultiFab (const iMultiFab &imf)
 Convert iMultiFab to MultiFab. More...
 
FabArray< BaseFab< Long > > ToLongMultiFab (const iMultiFab &imf)
 Convert iMultiFab to Long. More...
 
std::unique_ptr< MultiFabget_slice_data (int dir, Real coord, const MultiFab &cc, const Geometry &geom, int start_comp, int ncomp, bool interpolate)
 
iMultiFab makeFineMask (const BoxArray &cba, const DistributionMapping &cdm, const BoxArray &fba, const IntVect &ratio, int crse_value, int fine_value)
 
template<typename FAB >
void makeFineMask_doit (FabArray< FAB > &mask, const BoxArray &fba, const IntVect &ratio, Periodicity const &period, typename FAB::value_type crse_value, typename FAB::value_type fine_value)
 
iMultiFab makeFineMask (const BoxArray &cba, const DistributionMapping &cdm, const IntVect &cnghost, const BoxArray &fba, const IntVect &ratio, Periodicity const &period, int crse_value, int fine_value)
 
MultiFab makeFineMask (const BoxArray &cba, const DistributionMapping &cdm, const BoxArray &fba, const IntVect &ratio, Real crse_value, Real fine_value)
 
void computeDivergence (MultiFab &divu, const Array< MultiFab const *, AMREX_SPACEDIM > &umac, const Geometry &geom)
 Computes divergence of face-data stored in the umac MultiFab. More...
 
void computeGradient (MultiFab &grad, const Array< MultiFab const *, AMREX_SPACEDIM > &umac, const Geometry &geom)
 Computes gradient of face-data stored in the umac MultiFab. More...
 
MultiFab periodicShift (MultiFab const &mf, IntVect const &offset, Periodicity const &period)
 Periodic shift MultiFab. More...
 
Gpu::HostVector< Real > sumToLine (MultiFab const &mf, int icomp, int ncomp, Box const &domain, int direction, bool local=false)
 Sum MultiFab data to line. More...
 
template<typename FAB >
void average_down_nodal (const FabArray< FAB > &S_fine, FabArray< FAB > &S_crse, const IntVect &ratio, int ngcrse=0, bool mfiter_is_definitely_safe=false)
 Average fine node-based MultiFab onto crse node-centered MultiFab. More...
 
template<typename FAB >
iMultiFab makeFineMask (const FabArray< FAB > &cmf, const BoxArray &fba, const IntVect &ratio, int crse_value=0, int fine_value=1)
 
template<typename FAB >
iMultiFab makeFineMask (const FabArray< FAB > &cmf, const BoxArray &fba, const IntVect &ratio, Periodicity const &period, int crse_value, int fine_value)
 
template<typename FAB >
iMultiFab makeFineMask (const FabArray< FAB > &cmf, const FabArray< FAB > &fmf, const IntVect &cnghost, const IntVect &ratio, Periodicity const &period, int crse_value, int fine_value)
 
template<typename FAB >
iMultiFab makeFineMask (const FabArray< FAB > &cmf, const FabArray< FAB > &fmf, const IntVect &cnghost, const IntVect &ratio, Periodicity const &period, int crse_value, int fine_value, LayoutData< int > &has_cf)
 
template<typename T , typename U >
cast (U const &mf_in)
 example: auto mf = amrex::cast<MultiFab>(imf); More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avg_nd_to_cc (int i, int, int, int n, Array4< Real > const &cc, Array4< Real const > const &nd, int cccomp, int ndcomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avg_eg_to_cc (int i, int, int, Array4< Real > const &cc, Array4< Real const > const &Ex, int cccomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avg_fc_to_cc (int i, int, int, Array4< Real > const &cc, Array4< Real const > const &fx, int cccomp, GeometryData const &gd) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avg_cc_to_fc (int i, int, int, int n, Box const &xbx, Array4< Real > const &fx, Array4< Real const > const &cc, GeometryData const &gd, bool use_harmonic_averaging) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avgdown_faces (Box const &bx, Array4< Real > const &crse, Array4< Real const > const &fine, int ccomp, int fcomp, int ncomp, IntVect const &ratio, int) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avgdown_faces (int i, int, int, int n, Array4< Real > const &crse, Array4< Real const > const &fine, int ccomp, int fcomp, IntVect const &ratio, int) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avgdown_edges (Box const &bx, Array4< Real > const &crse, Array4< Real const > const &fine, int ccomp, int fcomp, int ncomp, IntVect const &ratio, int) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avgdown_edges (int i, int, int, int n, Array4< Real > const &crse, Array4< Real const > const &fine, int ccomp, int fcomp, IntVect const &ratio, int) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avgdown (Box const &bx, Array4< Real > const &crse, Array4< Real const > const &fine, int ccomp, int fcomp, int ncomp, IntVect const &ratio) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avgdown (int i, int, int, int n, Array4< Real > const &crse, Array4< Real const > const &fine, int ccomp, int fcomp, IntVect const &ratio) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avgdown_with_vol (int i, int, int, int n, Array4< Real > const &crse, Array4< Real const > const &fine, Array4< Real const > const &fv, int ccomp, int fcomp, IntVect const &ratio) noexcept
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avgdown_nodes (Box const &bx, Array4< T > const &crse, Array4< T const > const &fine, int ccomp, int fcomp, int ncomp, IntVect const &ratio) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avgdown_nodes (int i, int, int, int n, Array4< Real > const &crse, Array4< Real const > const &fine, int ccomp, int fcomp, IntVect const &ratio) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_compute_divergence (Box const &bx, Array4< Real > const &divu, Array4< Real const > const &u, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_compute_gradient (Box const &bx, Array4< Real > const &grad, Array4< Real const > const &u, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avg_eg_to_cc (int i, int j, int, Array4< Real > const &cc, Array4< Real const > const &Ex, Array4< Real const > const &Ey, int cccomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avg_fc_to_cc (int i, int j, int, Array4< Real > const &cc, Array4< Real const > const &fx, Array4< Real const > const &fy, int cccomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avg_cc_to_fc (int i, int j, int, int n, Box const &xbx, Box const &ybx, Array4< Real > const &fx, Array4< Real > const &fy, Array4< Real const > const &cc, bool use_harmonic_averaging) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_compute_divergence (Box const &bx, Array4< Real > const &divu, Array4< Real const > const &u, Array4< Real const > const &v, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_compute_gradient (Box const &bx, Array4< Real > const &grad, Array4< Real const > const &u, Array4< Real const > const &v, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_compute_convective_difference (Box const &bx, Array4< amrex::Real > const &diff, Array4< Real const > const &u_face, Array4< Real const > const &v_face, Array4< Real const > const &s_on_x_face, Array4< Real const > const &s_on_y_face, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_compute_divergence_rz (Box const &bx, Array4< Real > const &divu, Array4< Real const > const &u, Array4< Real const > const &v, Array4< Real const > const &ax, Array4< Real const > const &ay, Array4< Real const > const &vol) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_compute_gradient_rz (Box const &bx, Array4< Real > const &grad, Array4< Real const > const &u, Array4< Real const > const &v, Array4< Real const > const &ax, Array4< Real const > const &ay, Array4< Real const > const &vol) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avg_eg_to_cc (int i, int j, int k, Array4< Real > const &cc, Array4< Real const > const &Ex, Array4< Real const > const &Ey, Array4< Real const > const &Ez, int cccomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avg_fc_to_cc (int i, int j, int k, Array4< Real > const &cc, Array4< Real const > const &fx, Array4< Real const > const &fy, Array4< Real const > const &fz, int cccomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_avg_cc_to_fc (int i, int j, int k, int n, Box const &xbx, Box const &ybx, Box const &zbx, Array4< Real > const &fx, Array4< Real > const &fy, Array4< Real > const &fz, Array4< Real const > const &cc, bool use_harmonic_averaging) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_compute_divergence (Box const &bx, Array4< Real > const &divu, Array4< Real const > const &u, Array4< Real const > const &v, Array4< Real const > const &w, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_compute_gradient (Box const &bx, Array4< Real > const &grad, Array4< Real const > const &u, Array4< Real const > const &v, Array4< Real const > const &w, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_compute_convective_difference (Box const &bx, Array4< Real > const &diff, Array4< Real const > const &u_face, Array4< Real const > const &v_face, Array4< Real const > const &w_face, Array4< Real const > const &s_on_x_face, Array4< Real const > const &s_on_y_face, Array4< Real const > const &s_on_z_face, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE void amrex_fill_slice_interp (Box const &bx, Array4< Real > slice, Array4< Real const > const &full, int scomp, int fcomp, int ncomp, int dir, Real coord, GeometryData const &gd) noexcept
 
std::ostream & operator<< (std::ostream &os, const Orientation &o)
 Write to an ostream in ASCII format. More...
 
std::istream & operator>> (std::istream &is, Orientation &o)
 
std::ostream & operator<< (std::ostream &os, const ParmParse::PP_entry &pp)
 
static bool unused_table_entries_q (const ParmParse::Table &table, const std::string &prefix=std::string())
 
static void finalize_table (const std::string &pfx, const ParmParse::Table &table)
 
static void get_entries_under_prefix (std::vector< std::string > &found_entries, const ParmParse::Table &table, const std::string &prefix, const bool only_unused=false, const bool add_values=false)
 
template<typename... Ops, typename... Ts, typename FAB , typename F , typename foo = std::enable_if_t<IsBaseFab<FAB>::value>>
ReduceData< Ts... >::Type ParReduce (TypeList< Ops... > operation_list, TypeList< Ts... > type_list, FabArray< FAB > const &fa, IntVect const &nghost, F &&f)
 Parallel reduce for MultiFab/FabArray. More...
 
template<typename Op , typename T , typename FAB , typename F , typename foo = std::enable_if_t<IsBaseFab<FAB>::value>>
ParReduce (TypeList< Op > operation_list, TypeList< T > type_list, FabArray< FAB > const &fa, IntVect const &nghost, F &&f)
 Parallel reduce for MultiFab/FabArray. More...
 
template<typename... Ops, typename... Ts, typename FAB , typename F , typename foo = std::enable_if_t<IsBaseFab<FAB>::value>>
ReduceData< Ts... >::Type ParReduce (TypeList< Ops... > operation_list, TypeList< Ts... > type_list, FabArray< FAB > const &fa, IntVect const &nghost, int ncomp, F &&f)
 Parallel reduce for MultiFab/FabArray. More...
 
template<typename Op , typename T , typename FAB , typename F , typename foo = std::enable_if_t<IsBaseFab<FAB>::value>>
ParReduce (TypeList< Op > operation_list, TypeList< T > type_list, FabArray< FAB > const &fa, IntVect const &nghost, int ncomp, F &&f)
 Parallel reduce for MultiFab/FabArray. More...
 
template<typename... Ops, typename... Ts, typename FAB , typename F , typename foo = std::enable_if_t<IsBaseFab<FAB>::value>>
ReduceData< Ts... >::Type ParReduce (TypeList< Ops... > operation_list, TypeList< Ts... > type_list, FabArray< FAB > const &fa, F &&f)
 Parallel reduce for MultiFab/FabArray. More...
 
template<typename Op , typename T , typename FAB , typename F , typename foo = std::enable_if_t<IsBaseFab<FAB>::value>>
ParReduce (TypeList< Op > operation_list, TypeList< T > type_list, FabArray< FAB > const &fa, F &&f)
 Parallel reduce for MultiFab/FabArray. More...
 
static void setFileName ()
 
static void openFile ()
 
std::ostream & pout ()
 the stream that all output except error msgs should use More...
 
void setPoutBaseName (const std::string &a_Name)
 Set the base name for the parallel output files used by pout(). More...
 
const std::string & poutFileName ()
 return the current filename as used by pout() More...
 
template<typename T , typename F >
int Partition (T *data, int beg, int end, F &&f)
 A GPU-capable partition function for contiguous data. More...
 
template<typename T , typename F >
int Partition (T *data, int n, F &&f)
 A GPU-capable partition function for contiguous data. More...
 
template<typename T , typename F >
int Partition (Gpu::DeviceVector< T > &v, F &&f)
 A GPU-capable partition function for contiguous data. More...
 
template<typename T , typename F >
int StablePartition (T *data, int beg, int end, F &&f)
 A GPU-capable partition function for contiguous data. More...
 
template<typename T , typename F >
int StablePartition (T *data, int n, F &&f)
 A GPU-capable partition function for contiguous data. More...
 
template<typename T , typename F >
int StablePartition (Gpu::DeviceVector< T > &v, F &&f)
 A GPU-capable partition function for contiguous data. More...
 
std::string LevelPath (int level, const std::string &levelPrefix="Level_")
 return the name of the level directory, e.g., Level_5 More...
 
std::string MultiFabHeaderPath (int level, const std::string &levelPrefix="Level_", const std::string &mfPrefix="Cell")
 return the path of the multifab to write to the header, e.g., Level_5/Cell More...
 
std::string LevelFullPath (int level, const std::string &plotfilename, const std::string &levelPrefix="Level_")
 return the full path of the level directory, e.g., plt00005/Level_5 More...
 
std::string MultiFabFileFullPrefix (int level, const std::string &plotfilename, const std::string &levelPrefix="Level_", const std::string &mfPrefix="Cell")
 return the full path multifab prefix, e.g., plt00005/Level_5/Cell More...
 
void PreBuildDirectorHierarchy (const std::string &dirName, const std::string &subDirPrefix, int nSubDirs, bool callBarrier)
 prebuild a hierarchy of directories dirName is built first. if dirName exists, it is renamed. then build dirName/subDirPrefix_0 .. dirName/subDirPrefix_nSubDirs-1 if callBarrier is true, call ParallelDescriptor::Barrier() after all directories are built ParallelDescriptor::IOProcessor() creates the directories More...
 
void WriteGenericPlotfileHeader (std::ostream &HeaderFile, int nlevels, const Vector< BoxArray > &bArray, const Vector< std::string > &varnames, const Vector< Geometry > &geom, Real time, const Vector< int > &level_steps, const Vector< IntVect > &ref_ratio, const std::string &versionName, const std::string &levelPrefix, const std::string &mfPrefix)
 
void WriteMultiLevelPlotfile (const std::string &plotfilename, int nlevels, const Vector< const MultiFab * > &mf, const Vector< std::string > &varnames, const Vector< Geometry > &geom, Real time, const Vector< int > &level_steps, const Vector< IntVect > &ref_ratio, const std::string &versionName, const std::string &levelPrefix, const std::string &mfPrefix, const Vector< std::string > &extra_dirs)
 
void WriteMLMF (const std::string &plotfilename, const Vector< const MultiFab * > &mf, const Vector< Geometry > &geom)
 write a plotfile to disk given: -plotfile name -vector of MultiFabs -vector of Geometrys variable names are written as "Var0", "Var1", etc. refinement ratio is computed from the Geometry vector "time" and "level_steps" are set to zero More...
 
void WriteMultiLevelPlotfileHeaders (const std::string &plotfilename, int nlevels, const Vector< const MultiFab * > &mf, const Vector< std::string > &varnames, const Vector< Geometry > &geom, Real time, const Vector< int > &level_steps, const Vector< IntVect > &ref_ratio, const std::string &versionName, const std::string &levelPrefix, const std::string &mfPrefix, const Vector< std::string > &extra_dirs)
 
void WriteSingleLevelPlotfile (const std::string &plotfilename, const MultiFab &mf, const Vector< std::string > &varnames, const Geometry &geom, Real time, int level_step, const std::string &versionName, const std::string &levelPrefix, const std::string &mfPrefix, const Vector< std::string > &extra_dirs)
 
template<typename T >
std::ostream & operator<< (std::ostream &os, Array< T, AMREX_SPACEDIM > const &a)
 
template<typename T , typename S >
std::ostream & operator<< (std::ostream &os, const std::pair< T, S > &v)
 
Real Random ()
 Generate a psuedo-random double from uniform distribution. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real Random (RandomEngine const &random_engine)
 
Real RandomNormal (Real mean, Real stddev)
 Generate a psuedo-random double from a normal distribution. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real RandomNormal (Real mean, Real stddev, RandomEngine const &random_engine)
 
unsigned int RandomPoisson (Real lambda)
 Generate a psuedo-random integer from a Poisson distribution. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE unsigned int RandomPoisson (Real lambda, RandomEngine const &random_engine)
 
unsigned int Random_int (unsigned int n)
 Generates one pseudorandom unsigned integer which is uniformly distributed on [0,n-1]-interval for each call. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE unsigned int Random_int (unsigned int n, RandomEngine const &random_engine)
 
ULong Random_long (ULong n)
 Generates one pseudorandom unsigned long which is uniformly distributed on [0,n-1]-interval for each call. More...
 
void InitRandom (ULong seed, int nprocs=ParallelDescriptor::NProcs())
 Set the seed of the random number generator. More...
 
void ResetRandomSeed (ULong seed)
 
void SaveRandomState (std::ostream &os)
 Save and restore random state. More...
 
void RestoreRandomState (std::istream &is, int nthreads_old, int nstep_old)
 
void UniqueRandomSubset (Vector< int > &uSet, int setSize, int poolSize, bool printSet=false)
 Create a unique subset of random numbers from a pool of integers in the range [0, poolSize - 1] the set will be in the order they are found setSize must be <= poolSize uSet will be resized to setSize if you want all processors to have the same set, call this on one processor and broadcast the array. More...
 
void NItemsPerBin (int totalItems, Vector< int > &binCounts)
 Fill binCounts with the number of items for each bin. The remainder items are randomly assigned. More...
 
void DeallocateRandomSeedDevArray ()
 
AMREX_FORCE_INLINE randState_tgetRandState ()
 
std::ostream & operator<< (std::ostream &, const RealBox &)
 Nice ASCII output. More...
 
std::istream & operator>> (std::istream &, RealBox &)
 Nice ASCII input. More...
 
bool AlmostEqual (const RealBox &box1, const RealBox &box2, Real eps=0.0) noexcept
 Check for equality of real boxes within a certain tolerance. More...
 
std::ostream & operator<< (std::ostream &ostr, const RealVect &p)
 
std::istream & operator>> (std::istream &is, RealVect &iv)
 
AMREX_GPU_HOST_DEVICE RealVect scale (const RealVect &p, Real s) noexcept
 
AMREX_GPU_HOST_DEVICE RealVect min (const RealVect &p1, const RealVect &p2) noexcept
 
AMREX_GPU_HOST_DEVICE RealVect max (const RealVect &p1, const RealVect &p2) noexcept
 
AMREX_GPU_HOST_DEVICE RealVect BASISREALV (int dir) noexcept
 
AMREX_GPU_HOST_DEVICE RealVect operator/ (Real s, const RealVect &p) noexcept
 
AMREX_GPU_HOST_DEVICE RealVect operator+ (Real s, const RealVect &p) noexcept
 
AMREX_GPU_HOST_DEVICE RealVect operator- (Real s, const RealVect &p) noexcept
 
AMREX_GPU_HOST_DEVICE RealVect operator* (Real s, const RealVect &p) noexcept
 
AMREX_GPU_HOST_DEVICE RealVect operator/ (const RealVect &s, const RealVect &p) noexcept
 
AMREX_GPU_HOST_DEVICE RealVect operator+ (const RealVect &s, const RealVect &p) noexcept
 
AMREX_GPU_HOST_DEVICE RealVect operator- (const RealVect &s, const RealVect &p) noexcept
 
AMREX_GPU_HOST_DEVICE RealVect operator* (const RealVect &s, const RealVect &p) noexcept
 
template<class TagType , class F >
std::enable_if_t< std::is_same< std::decay_t< decltype(std::declval< TagType >).box())>, Box >::value > ParallelFor (Vector< TagType > const &tags, int ncomp, F &&f)
 
template<class TagType , class F >
std::enable_if_t< std::is_same< std::decay_t< decltype(std::declval< TagType >).box())>, Box >::value > ParallelFor (Vector< TagType > const &tags, F &&f)
 
template<class TagType , class F >
std::enable_if_t< std::is_integral< std::decay_t< decltype(std::declval< TagType >).size())> >::value > ParallelFor (Vector< TagType > const &tags, F &&f)
 
template<std::size_t I, typename... Ts>
constexpr AMREX_GPU_HOST_DEVICE GpuTupleElement< I, GpuTuple< Ts... > >::type & get (GpuTuple< Ts... > &tup) noexcept
 
template<std::size_t I, typename... Ts>
constexpr AMREX_GPU_HOST_DEVICE GpuTupleElement< I, GpuTuple< Ts... > >::type const & get (GpuTuple< Ts... > const &tup) noexcept
 
template<std::size_t I, typename... Ts>
constexpr AMREX_GPU_HOST_DEVICE GpuTupleElement< I, GpuTuple< Ts... > >::type && get (GpuTuple< Ts... > &&tup) noexcept
 
template<typename... Ts>
constexpr AMREX_GPU_HOST_DEVICE GpuTuple< detail::tuple_decay_t< Ts >... > makeTuple (Ts &&... args)
 
template<typename TP >
constexpr AMREX_GPU_HOST_DEVICE auto TupleCat (TP &&a) -> typename detail::tuple_cat_result< detail::tuple_decay_t< TP > >::type
 
template<typename TP1 , typename TP2 >
constexpr AMREX_GPU_HOST_DEVICE auto TupleCat (TP1 &&a, TP2 &&b) -> typename detail::tuple_cat_result< detail::tuple_decay_t< TP1 >, detail::tuple_decay_t< TP2 > >::type
 
template<typename TP1 , typename TP2 , typename... TPs>
constexpr AMREX_GPU_HOST_DEVICE auto TupleCat (TP1 &&a, TP2 &&b, TPs &&... args) -> typename detail::tuple_cat_result< detail::tuple_decay_t< TP1 >, detail::tuple_decay_t< TP2 >, detail::tuple_decay_t< TPs >... >::type
 
template<typename F , typename TP >
constexpr AMREX_GPU_HOST_DEVICE auto Apply (F &&f, TP &&t) -> typename detail::apply_result< F, detail::tuple_decay_t< TP > >::type
 
template<typename... Args>
constexpr AMREX_GPU_HOST_DEVICE GpuTuple< Args &... > Tie (Args &... args) noexcept
 
template<typename... Ts>
constexpr AMREX_GPU_HOST_DEVICE GpuTuple< Ts &&... > ForwardAsTuple (Ts &&... args) noexcept
 
bool is_integer (const char *str)
 Useful C++ Utility Functions. More...
 
template<typename T >
bool is_it (std::string const &s, T &v)
 Return true and store value in v if string s is type T. More...
 
const std::vector< std::string > & Tokenize (const std::string &instr, const std::string &separators)
 Splits "instr" into separate pieces based on "separators". More...
 
std::string toLower (std::string s)
 Converts all characters of the string into lower or uppercase based on std::locale. More...
 
std::string toUpper (std::string s)
 
std::string trim (std::string s, std::string const &space=" \t")
 Trim leading and trailing white space. More...
 
std::string Concatenate (const std::string &root, int num, int mindigits=5)
 Returns rootNNNN where NNNN == num. More...
 
bool UtilCreateDirectory (const std::string &path, mode_t mode, bool verbose=false)
 Creates the specified directories. path may be either a full pathname or a relative pathname. It will create all the directories in the pathname, if they don't already exist, so that on successful return the pathname refers to an existing directory. Returns true or false depending upon whether or not it was successful. Also returns true if path is NULL or "/". mode is the mode passed to mkdir() for any directories that must be created (for example: 0755). verbose will print out the directory creation steps. More...
 
void CreateDirectoryFailed (const std::string &dir)
 Output a message and abort when couldn't create the directory. More...
 
void FileOpenFailed (const std::string &dir)
 Output a message and abort when couldn't open the file. More...
 
bool FileExists (const std::string &filename)
 Check if a file already exists. Return true if the filename is an existing file, directory, or link. For links, this operates on the link and not what the link points to. More...
 
std::string UniqueString ()
 Create a (probably) unique string. More...
 
void UtilCreateCleanDirectory (const std::string &path, bool callbarrier=true)
 Create a new directory, renaming the old one if it exists. More...
 
void UtilCreateDirectoryDestructive (const std::string &path, bool callbarrier=true)
 
void UtilRenameDirectoryToOld (const std::string &path, bool callbarrier=true)
 Rename a current directory if it exists. More...
 
void OutOfMemory ()
 Aborts after printing message indicating out-of-memory; i.e. operator new has failed. This is the "supported" set_new_handler() function for AMReX applications. More...
 
double InvNormDist (double p)
 This function returns an approximation of the inverse cumulative standard normal distribution function. I.e., given P, it returns an approximation to the X satisfying P = Pr{Z <= X} where Z is a random variable from the standard normal distribution. More...
 
double InvNormDistBest (double p)
 This function returns an approximation of the inverse cumulative standard normal distribution function. I.e., given P, it returns an approximation to the X satisfying P = Pr{Z <= X} where Z is a random variable from the standard normal distribution. More...
 
int CRRBetweenLevels (int fromlevel, int tolevel, const Vector< int > &refratios)
 
std::istream & operator>> (std::istream &, const expect &exp)
 
Vector< char > SerializeStringArray (const Vector< std::string > &stringArray)
 
Vector< std::string > UnSerializeStringArray (const Vector< char > &charArray)
 
void SyncStrings (const Vector< std::string > &localStrings, Vector< std::string > &syncedStrings, bool &alreadySynced)
 
template<typename T >
Long bytesOf (const std::vector< T > &v)
 
template<typename Key , typename T , class Compare >
Long bytesOf (const std::map< Key, T, Compare > &m)
 
void BroadcastBool (bool &bBool, int myLocalId, int rootId, const MPI_Comm &localComm)
 
void BroadcastString (std::string &bStr, int myLocalId, int rootId, const MPI_Comm &localComm)
 
void BroadcastStringArray (Vector< std::string > &bSA, int myLocalId, int rootId, const MPI_Comm &localComm)
 
template<class T >
void BroadcastArray (Vector< T > &aT, int myLocalId, int rootId, const MPI_Comm &localComm)
 
void Sleep (double sleepsec)
 
double second () noexcept
 Returns wall-clock seconds since start of execution. More...
 
template<typename T >
void hash_combine (uint64_t &seed, const T &val) noexcept
 
template<typename T >
uint64_t hash_vector (const Vector< T > &vec, uint64_t seed=0xDEADBEEFDEADBEEF) noexcept
 
template<class T , typename = typename T::FABType>
Vector< T * > GetVecOfPtrs (Vector< T > &a)
 
template<class T >
Vector< T * > GetVecOfPtrs (const Vector< std::unique_ptr< T > > &a)
 
template<class T , typename = typename T::FABType>
Vector< const T * > GetVecOfConstPtrs (const Vector< T > &a)
 
template<class T >
Vector< const T * > GetVecOfConstPtrs (const Vector< std::unique_ptr< T > > &a)
 
template<class T , typename = typename T::FABType>
Vector< const T * > GetVecOfConstPtrs (const Vector< T * > &a)
 
template<class T >
Vector< Vector< T * > > GetVecOfVecOfPtrs (const Vector< Vector< std::unique_ptr< T > > > &a)
 
template<class T >
Vector< std::array< T *, AMREX_SPACEDIM > > GetVecOfArrOfPtrs (const Vector< std::array< std::unique_ptr< T >, AMREX_SPACEDIM > > &a)
 
template<class T >
Vector< std::array< T const *, AMREX_SPACEDIM > > GetVecOfArrOfPtrsConst (const Vector< std::array< std::unique_ptr< T >, AMREX_SPACEDIM > > &a)
 
template<class T >
Vector< std::array< T const *, AMREX_SPACEDIM > > GetVecOfArrOfConstPtrs (const Vector< std::array< std::unique_ptr< T >, AMREX_SPACEDIM > > &a)
 
template<class T , typename std::enable_if< IsFabArray< T >::value||IsBaseFab< T >::value, int >::type = 0>
Vector< std::array< T const *, AMREX_SPACEDIM > > GetVecOfArrOfConstPtrs (const Vector< std::array< T, AMREX_SPACEDIM > > &a)
 
template<class T , typename std::enable_if< IsFabArray< T >::value||IsBaseFab< T >::value, int >::type = 0>
Vector< std::array< T *, AMREX_SPACEDIM > > GetVecOfArrOfPtrs (Vector< std::array< T, AMREX_SPACEDIM > > &a)
 
template<class T >
void FillNull (Vector< T * > &a)
 
template<class T >
void FillNull (Vector< std::unique_ptr< T > > &a)
 
template<class T >
void RemoveDuplicates (Vector< T > &vec)
 
template<class T , class H >
void RemoveDuplicates (Vector< T > &vec)
 
void writeIntData (const int *data, std::size_t size, std::ostream &os, const IntDescriptor &id=FPC::NativeIntDescriptor())
 Functions for writing integer data to disk in a portable, self-describing manner. More...
 
void readIntData (int *data, std::size_t size, std::istream &is, const IntDescriptor &id)
 
void writeLongData (const Long *data, std::size_t size, std::ostream &os, const IntDescriptor &id=FPC::NativeLongDescriptor())
 
void readLongData (Long *data, std::size_t size, std::istream &is, const IntDescriptor &id)
 
void writeRealData (const Real *data, std::size_t size, std::ostream &os, const RealDescriptor &rd=FPC::NativeRealDescriptor())
 
void readRealData (Real *data, std::size_t size, std::istream &is, const RealDescriptor &rd)
 
void writeFloatData (const float *data, std::size_t size, std::ostream &os, const RealDescriptor &rd=FPC::Native32RealDescriptor())
 
void readFloatData (float *data, std::size_t size, std::istream &is, const RealDescriptor &rd)
 
void writeDoubleData (const double *data, std::size_t size, std::ostream &os, const RealDescriptor &rd=FPC::Native64RealDescriptor())
 
void readDoubleData (double *data, std::size_t size, std::istream &is, const RealDescriptor &rd)
 
void writeData (int const *data, std::size_t size, std::ostream &os)
 
void writeData (Long const *data, std::size_t size, std::ostream &os)
 
void writeData (float const *data, std::size_t size, std::ostream &os)
 
void writeData (double const *data, std::size_t size, std::ostream &os)
 
void readData (int *data, std::size_t size, std::istream &is)
 
void readData (Long *data, std::size_t size, std::istream &is)
 
void readData (float *data, std::size_t size, std::istream &is)
 
void readData (double *data, std::size_t size, std::istream &is)
 
std::ostream & operator<< (std::ostream &os, const VisMF::FabOnDisk &fod)
 Write a FabOnDisk to an ostream in ASCII. More...
 
std::istream & operator>> (std::istream &is, VisMF::FabOnDisk &fod)
 Read a FabOnDisk from an istream. More...
 
std::ostream & operator<< (std::ostream &os, const Vector< VisMF::FabOnDisk > &fa)
 Write an Vector<FabOnDisk> to an ostream in ASCII. More...
 
std::istream & operator>> (std::istream &is, Vector< VisMF::FabOnDisk > &fa)
 Read an Vector<FabOnDisk> from an istream. More...
 
static std::ostream & operator<< (std::ostream &os, const Vector< Vector< Real > > &ar)
 
static std::istream & operator>> (std::istream &is, Vector< Vector< Real > > &ar)
 
std::ostream & operator<< (std::ostream &os, const VisMF::Header &hd)
 Write a VisMF::Header to an ostream in ASCII. More...
 
std::istream & operator>> (std::istream &is, VisMF::Header &hd)
 Read a VisMF::Header from an istream. More...
 
static int iparser_local_symbol_index (struct iparser_symbol *sym, Vector< char * > &local_variables)
 
void iparser_compile_exe_size (struct iparser_node *node, char *&p, std::size_t &exe_size, int &max_stack_size, int &stack_size, Vector< char * > &local_variables)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int iparser_exe_eval (char *p, int const *x)
 
std::size_t iparser_exe_size (struct amrex_iparser *parser, int &max_stack_size, int &stack_size)
 
void iparser_compile (struct amrex_iparser *parser, char *p)
 
void iparser_defexpr (struct iparser_node *body)
 
struct iparser_symboliparser_makesymbol (char *name)
 
struct iparser_nodeiparser_newnode (enum iparser_node_t type, struct iparser_node *l, struct iparser_node *r)
 
struct iparser_nodeiparser_newnumber (int d)
 
struct iparser_nodeiparser_newsymbol (struct iparser_symbol *symbol)
 
struct iparser_nodeiparser_newf1 (enum iparser_f1_t ftype, struct iparser_node *l)
 
struct iparser_nodeiparser_newf2 (enum iparser_f2_t ftype, struct iparser_node *l, struct iparser_node *r)
 
struct iparser_nodeiparser_newf3 (enum iparser_f3_t ftype, struct iparser_node *n1, struct iparser_node *n2, struct iparser_node *n3)
 
struct iparser_nodeiparser_newassign (struct iparser_symbol *sym, struct iparser_node *v)
 
struct iparser_nodeiparser_newlist (struct iparser_node *nl, struct iparser_node *nr)
 
struct amrex_iparseramrex_iparser_new ()
 
void amrex_iparser_delete (struct amrex_iparser *iparser)
 
static std::size_t iparser_aligned_size (std::size_t N)
 
static void * iparser_allocate (struct amrex_iparser *my_iparser, std::size_t N)
 
struct amrex_iparseriparser_dup (struct amrex_iparser *source)
 
std::size_t iparser_ast_size (struct iparser_node *node)
 
struct iparser_nodeiparser_ast_dup (struct amrex_iparser *my_iparser, struct iparser_node *node, int move)
 
void iparser_ast_optimize (struct iparser_node *node)
 
static void iparser_ast_print_f1 (struct iparser_f1 *f1, std::string const &space, AllPrint &printer)
 
static void iparser_ast_print_f2 (struct iparser_f2 *f2, std::string const &space, AllPrint &printer)
 
static void iparser_ast_print_f3 (struct iparser_f3 *f3, std::string const &space, AllPrint &printer)
 
void iparser_ast_print (struct iparser_node *node, std::string const &space, AllPrint &printer)
 
int iparser_ast_depth (struct iparser_node *node)
 
void iparser_ast_regvar (struct iparser_node *node, char const *name, int i)
 
void iparser_ast_setconst (struct iparser_node *node, char const *name, int c)
 
void iparser_ast_get_symbols (struct iparser_node *node, std::set< std::string > &symbols, std::set< std::string > &local_symbols)
 
void iparser_regvar (struct amrex_iparser *iparser, char const *name, int i)
 
void iparser_setconst (struct amrex_iparser *iparser, char const *name, int c)
 
void iparser_print (struct amrex_iparser *iparser)
 
std::set< std::string > iparser_get_symbols (struct amrex_iparser *iparser)
 
int iparser_depth (struct amrex_iparser *iparser)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int iparser_call_f1 (enum iparser_f1_t, int a)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int iparser_call_f2 (enum iparser_f2_t type, int a, int b)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int iparser_call_f3 (enum iparser_f3_t, int a, int b, int c)
 
static int parser_local_symbol_index (struct parser_symbol *sym, Vector< char * > &local_variables)
 
void parser_compile_exe_size (struct parser_node *node, char *&p, std::size_t &exe_size, int &max_stack_size, int &stack_size, Vector< char * > &local_variables)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE double parser_exe_eval (char *p, double const *x)
 
std::size_t parser_exe_size (struct amrex_parser *parser, int &max_stack_size, int &stack_size)
 
void parser_compile (struct amrex_parser *parser, char *p)
 
void parser_defexpr (struct parser_node *body)
 
struct parser_symbolparser_makesymbol (char *name)
 
struct parser_nodeparser_newnode (enum parser_node_t type, struct parser_node *l, struct parser_node *r)
 
struct parser_nodeparser_newnumber (double d)
 
struct parser_nodeparser_newsymbol (struct parser_symbol *symbol)
 
struct parser_nodeparser_newf1 (enum parser_f1_t ftype, struct parser_node *l)
 
struct parser_nodeparser_newf2 (enum parser_f2_t ftype, struct parser_node *l, struct parser_node *r)
 
struct parser_nodeparser_newf3 (enum parser_f3_t ftype, struct parser_node *n1, struct parser_node *n2, struct parser_node *n3)
 
struct parser_nodeparser_newassign (struct parser_symbol *sym, struct parser_node *v)
 
struct parser_nodeparser_newlist (struct parser_node *nl, struct parser_node *nr)
 
struct amrex_parseramrex_parser_new ()
 
void amrex_parser_delete (struct amrex_parser *parser)
 
static std::size_t parser_aligned_size (std::size_t N)
 
static void * parser_allocate (struct amrex_parser *my_parser, std::size_t N)
 
struct amrex_parserparser_dup (struct amrex_parser *source)
 
std::size_t parser_ast_size (struct parser_node *node)
 
struct parser_nodeparser_ast_dup (struct amrex_parser *my_parser, struct parser_node *node, int move)
 
void parser_ast_optimize (struct parser_node *node)
 
static void parser_ast_print_f1 (struct parser_f1 *f1, std::string const &space, AllPrint &printer)
 
static void parser_ast_print_f2 (struct parser_f2 *f2, std::string const &space, AllPrint &printer)
 
static void parser_ast_print_f3 (struct parser_f3 *f3, std::string const &space, AllPrint &printer)
 
void parser_ast_print (struct parser_node *node, std::string const &space, AllPrint &printer)
 
int parser_ast_depth (struct parser_node *node)
 
void parser_ast_regvar (struct parser_node *node, char const *name, int i)
 
void parser_ast_setconst (struct parser_node *node, char const *name, double c)
 
void parser_ast_get_symbols (struct parser_node *node, std::set< std::string > &symbols, std::set< std::string > &local_symbols)
 
void parser_regvar (struct amrex_parser *parser, char const *name, int i)
 
void parser_setconst (struct amrex_parser *parser, char const *name, double c)
 
void parser_print (struct amrex_parser *parser)
 
std::set< std::string > parser_get_symbols (struct amrex_parser *parser)
 
int parser_depth (struct amrex_parser *parser)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_exp (T a)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_log (T a)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_log10 (T a)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_sin (T a)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_cos (T a)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_tan (T a)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_asin (T a)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_acos (T a)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_atan (T a)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_sinh (T a)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_cosh (T a)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_tanh (T a)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_pow (T a, T b)
 
template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINEparser_math_jn (int a, T b)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE double parser_call_f1 (enum parser_f1_t type, double a)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE double parser_call_f2 (enum parser_f2_t type, double a, double b)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE double parser_call_f3 (enum parser_f3_t, double a, double b, double c)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void interpbndrydata_o1 (int i, int, int, int n, Array4< Real > const &bdry, int nb, Array4< Real const > const &crse, int nc, Dim3 const &r) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void interpbndrydata_x_o3 (int i, int, int, int n, Array4< Real > const &bdry, int nb, Array4< Real const > const &crse, int nc, Dim3 const &r, Array4< int const > const &, int) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void interpbndrydata_y_o3 (int i, int j, int, int n, Array4< Real > const &bdry, int nb, Array4< Real const > const &crse, int nc, Dim3 const &r, Array4< int const > const &mask, int not_covered) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void interpbndrydata_z_o3 (int i, int j, int k, int n, Array4< Real > const &bdry, int nb, Array4< Real const > const &crse, int nc, Dim3 const &r, Array4< int const > const &mask, int not_covered) noexcept
 
std::ostream & operator<< (std::ostream &os, const LinOpBCType &t)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void poly_interp_coeff (Real xInt, Real const *AMREX_RESTRICT x, int N, Real *AMREX_RESTRICT c) noexcept
 
std::ostream & operator<< (std::ostream &os, const Mask &m)
 
std::istream & operator>> (std::istream &is, Mask &m)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void yafluxreg_crseadd (Box const &bx, Array4< Real > const &d, Array4< int const > const &flag, Array4< Real const > const &fx, Real dtdx, int nc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void yafluxreg_fineadd (Box const &bx, Array4< Real > const &d, Array4< Real const > const &f, Real dtdx, int nc, int dirside, Dim3 const &rr) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void yafluxreg_crseadd (Box const &bx, Array4< Real > const &d, Array4< int const > const &flag, Array4< Real const > const &fx, Array4< Real const > const &fy, Real dtdx, Real dtdy, int nc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void yafluxreg_crseadd (Box const &bx, Array4< Real > const &d, Array4< int const > const &flag, Array4< Real const > const &fx, Array4< Real const > const &fy, Array4< Real const > const &fz, Real dtdx, Real dtdy, Real dtdz, int nc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void decomp_chol_np6 (Array2D< Real, 0, 5, 0, 5 > &aa)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void cholsol_np6 (Array2D< Real, 0, 11, 0, 5 > &Amatrix, Array1D< Real, 0, 5 > &b)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void cholsol_for_eb (Array2D< Real, 0, 17, 0, 5 > &Amatrix, Array1D< Real, 0, 5 > &b)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_x_of_phi_on_centroids (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Real &yloc_on_xface, bool is_eb_dirichlet, bool is_eb_inhomog)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_y_of_phi_on_centroids (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Real &xloc_on_yface, bool is_eb_dirichlet, bool is_eb_inhomog)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_eb_of_phi_on_centroids (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Real &nrmx, Real &nrmy, bool is_eb_inhomog)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_x_of_phi_on_centroids_extdir (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Array4< Real const > const &vfrac, Real &yloc_on_xface, bool is_eb_dirichlet, bool is_eb_inhomog, const bool on_x_face, const int domlo_x, const int domhi_x, const bool on_y_face, const int domlo_y, const int domhi_y)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_y_of_phi_on_centroids_extdir (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Array4< Real const > const &vfrac, Real &xloc_on_yface, bool is_eb_dirichlet, bool is_eb_inhomog, const bool on_x_face, const int domlo_x, const int domhi_x, const bool on_y_face, const int domlo_y, const int domhi_y)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_eb_of_phi_on_centroids_extdir (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Array4< Real const > const &vfrac, Real &nrmx, Real &nrmy, bool is_eb_inhomog, const bool on_x_face, const int domlo_x, const int domhi_x, const bool on_y_face, const int domlo_y, const int domhi_y)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void decomp_chol_np10 (Array2D< Real, 0, 9, 0, 9 > &aa)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void cholsol_np10 (Array2D< Real, 0, 35, 0, 9 > &Amatrix, Array1D< Real, 0, 9 > &b)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void cholsol_for_eb (Array2D< Real, 0, 53, 0, 9 > &Amatrix, Array1D< Real, 0, 9 > &b)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_x_of_phi_on_centroids (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Real &yloc_on_xface, Real &zloc_on_xface, bool is_eb_dirichlet, bool is_eb_inhomog)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_y_of_phi_on_centroids (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Real &xloc_on_yface, Real &zloc_on_yface, bool is_eb_dirichlet, bool is_eb_inhomog)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_z_of_phi_on_centroids (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Real &xloc_on_zface, Real &yloc_on_zface, bool is_eb_dirichlet, bool is_eb_inhomog)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_eb_of_phi_on_centroids (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Real &nrmx, Real &nrmy, Real &nrmz, bool is_eb_inhomog)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_x_of_phi_on_centroids_extdir (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Array4< Real const > const &vfrac, Real &yloc_on_xface, Real &zloc_on_xface, bool is_eb_dirichlet, bool is_eb_inhomog, const bool on_x_face, const int domlo_x, const int domhi_x, const bool on_y_face, const int domlo_y, const int domhi_y, const bool on_z_face, const int domlo_z, const int domhi_z)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_y_of_phi_on_centroids_extdir (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Array4< Real const > const &vfrac, Real &xloc_on_yface, Real &zloc_on_yface, bool is_eb_dirichlet, bool is_eb_inhomog, const bool on_x_face, const int domlo_x, const int domhi_x, const bool on_y_face, const int domlo_y, const int domhi_y, const bool on_z_face, const int domlo_z, const int domhi_z)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_z_of_phi_on_centroids_extdir (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Array4< Real const > const &vfrac, Real &xloc_on_zface, Real &yloc_on_zface, bool is_eb_dirichlet, bool is_eb_inhomog, const bool on_x_face, const int domlo_x, const int domhi_x, const bool on_y_face, const int domlo_y, const int domhi_y, const bool on_z_face, const int domlo_z, const int domhi_z)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real grad_eb_of_phi_on_centroids_extdir (int i, int j, int k, int n, Array4< Real const > const &phi, Array4< Real const > const &phieb, Array4< EBCellFlag const > const &flag, Array4< Real const > const &ccent, Array4< Real const > const &bcent, Array4< Real const > const &vfrac, Real &nrmx, Real &nrmy, Real &nrmz, bool is_eb_inhomog, const bool on_x_face, const int domlo_x, const int domhi_x, const bool on_y_face, const int domlo_y, const int domhi_y, const bool on_z_face, const int domlo_z, const int domhi_z)
 
template<typename G >
void FillImpFunc (MultiFab &mf, G const &gshop, Geometry const &geom)
 
void TagCutCells (TagBoxArray &tags, const MultiFab &state)
 
void TagVolfrac (TagBoxArray &tags, const MultiFab &volfrac, Real tol)
 
std::ostream & operator<< (std::ostream &os, const EBCellFlag &flag)
 
std::unique_ptr< EBFArrayBoxFactorymakeEBFabFactory (const Geometry &a_geom, const BoxArray &a_ba, const DistributionMapping &a_dm, const Vector< int > &a_ngrow, EBSupport a_support)
 
std::unique_ptr< EBFArrayBoxFactorymakeEBFabFactory (const EB2::Level *eb_level, const BoxArray &a_ba, const DistributionMapping &a_dm, const Vector< int > &a_ngrow, EBSupport a_support)
 
std::unique_ptr< EBFArrayBoxFactorymakeEBFabFactory (const EB2::IndexSpace *index_space, const Geometry &a_geom, const BoxArray &a_ba, const DistributionMapping &a_dm, const Vector< int > &a_ngrow, EBSupport a_support)
 
const EBCellFlagFabgetEBCellFlagFab (const FArrayBox &fab)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_flux_reg_crseadd_va (int i, int j, int k, Array4< Real > const &d, Array4< int const > const &flag, Array4< Real const > const &fx, Array4< Real const > const &fy, Array4< Real const > const &vfrac, Array4< Real const > const &ax, Array4< Real const > const &ay, Real dtdx, Real dtdy)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_flux_reg_fineadd_va_xlo (int i, int j, int k, int n, Array4< Real > const &d, Array4< Real const > const &f, Array4< Real const > const &vfrac, Array4< Real const > const &a, Real fac, Dim3 const &ratio)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_flux_reg_fineadd_va_xhi (int i, int j, int k, int n, Array4< Real > const &d, Array4< Real const > const &f, Array4< Real const > const &vfrac, Array4< Real const > const &a, Real fac, Dim3 const &ratio)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_flux_reg_fineadd_va_ylo (int i, int j, int k, int n, Array4< Real > const &d, Array4< Real const > const &f, Array4< Real const > const &vfrac, Array4< Real const > const &a, Real fac, Dim3 const &ratio)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_flux_reg_fineadd_va_yhi (int i, int j, int k, int n, Array4< Real > const &d, Array4< Real const > const &f, Array4< Real const > const &vfrac, Array4< Real const > const &a, Real fac, Dim3 const &ratio)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_flux_reg_fineadd_dm (int i, int j, int k, int n, Box const &dmbx, Array4< Real > const &d, Array4< Real const > const &dm, Array4< Real const > const &vfrac, Dim3 const &ratio, Real threshold)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_rereflux_from_crse (int i, int j, int k, int n, Box const &bx, Array4< Real > const &d, Array4< Real const > const &s, Array4< int const > const &amrflg, Array4< EBCellFlag const > const &ebflg, Array4< Real const > const &vfrac)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_rereflux_to_fine (int i, int j, int, int n, Array4< Real > const &d, Array4< Real const > const &s, Array4< int const > const &msk, Dim3 ratio)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_flux_reg_crseadd_va (int i, int j, int k, Array4< Real > const &d, Array4< int const > const &flag, Array4< Real const > const &fx, Array4< Real const > const &fy, Array4< Real const > const &fz, Array4< Real const > const &vfrac, Array4< Real const > const &ax, Array4< Real const > const &ay, Array4< Real const > const &az, Real dtdx, Real dtdy, Real dtdz)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_flux_reg_fineadd_va_zlo (int i, int j, int k, int n, Array4< Real > const &d, Array4< Real const > const &f, Array4< Real const > const &vfrac, Array4< Real const > const &a, Real fac, Dim3 const &ratio)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_flux_reg_fineadd_va_zhi (int i, int j, int k, int n, Array4< Real > const &d, Array4< Real const > const &f, Array4< Real const > const &vfrac, Array4< Real const > const &a, Real fac, Dim3 const &ratio)
 
void EB_set_covered (MultiFab &mf, Real val)
 
void EB_set_covered (MultiFab &mf, int icomp, int ncomp, int ngrow, Real val)
 
void EB_set_covered (MultiFab &mf, int icomp, int ncomp, const Vector< Real > &vals)
 
void EB_set_covered (MultiFab &mf, int icomp, int ncomp, int ngrow, const Vector< Real > &a_vals)
 
void EB_set_covered_faces (const Array< MultiFab *, AMREX_SPACEDIM > &umac, Real val)
 
void EB_set_covered_faces (const Array< MultiFab *, AMREX_SPACEDIM > &umac, const int scomp, const int ncomp, const Vector< Real > &a_vals)
 
void EB_average_down (const MultiFab &S_fine, MultiFab &S_crse, const MultiFab &vol_fine, const MultiFab &vfrac_fine, int scomp, int ncomp, const IntVect &ratio)
 
void EB_average_down (const MultiFab &S_fine, MultiFab &S_crse, int scomp, int ncomp, int ratio)
 
void EB_average_down (const MultiFab &S_fine, MultiFab &S_crse, int scomp, int ncomp, const IntVect &ratio)
 
void EB_average_down_faces (const Array< const MultiFab *, AMREX_SPACEDIM > &fine, const Array< MultiFab *, AMREX_SPACEDIM > &crse, int ratio, int ngcrse)
 
void EB_average_down_faces (const Array< const MultiFab *, AMREX_SPACEDIM > &fine, const Array< MultiFab *, AMREX_SPACEDIM > &crse, const IntVect &ratio, int ngcrse)
 
void EB_average_down_faces (const Array< const MultiFab *, AMREX_SPACEDIM > &fine, const Array< MultiFab *, AMREX_SPACEDIM > &crse, const IntVect &ratio, const Geometry &crse_geom)
 
void EB_average_down_boundaries (const MultiFab &fine, MultiFab &crse, int ratio, int ngcrse)
 
void EB_average_down_boundaries (const MultiFab &fine, MultiFab &crse, const IntVect &ratio, int ngcrse)
 
void EB_computeDivergence (MultiFab &divu, const Array< MultiFab const *, AMREX_SPACEDIM > &umac, const Geometry &geom, bool already_on_centroids)
 
void EB_average_face_to_cellcenter (MultiFab &ccmf, int dcomp, const Array< MultiFab const *, AMREX_SPACEDIM > &fmf)
 
void EB_interp_CC_to_Centroid (MultiFab &cent, const MultiFab &cc, int scomp, int dcomp, int ncomp, const Geometry &geom)
 
void EB_interp_CC_to_FaceCentroid (const MultiFab &cc, AMREX_D_DECL(MultiFab &fc_x, MultiFab &fc_y, MultiFab &fc_z), int scomp, int dcomp, int ncomp, const Geometry &a_geom, const Vector< BCRec > &a_bcs)
 
void EB_interp_CellCentroid_to_FaceCentroid (const MultiFab &phi_centroid, const Array< MultiFab *, AMREX_SPACEDIM > &phi_faces, int scomp, int dcomp, int nc, const Geometry &geom, const amrex::Vector< amrex::BCRec > &a_bcs)
 
void EB_interp_CellCentroid_to_FaceCentroid (const MultiFab &phi_centroid, const Vector< MultiFab * > &phi_faces, int scomp, int dcomp, int nc, const Geometry &geom, const amrex::Vector< amrex::BCRec > &a_bcs)
 
void EB_interp_CellCentroid_to_FaceCentroid (const MultiFab &phi_centroid, AMREX_D_DECL(MultiFab &phi_xface, MultiFab &phi_yface, MultiFab &phi_zface), int scomp, int dcomp, int ncomp, const Geometry &a_geom, const Vector< BCRec > &a_bcs)
 
void EB_interp_CC_to_FaceCentroid (const MultiFab &cc, AMREX_D_DECL(MultiFab &fcx, MultiFab &fcy, MultiFab &fcz), int scomp, int dcomp, int nc, const Geometry &geom, const amrex::Vector< amrex::BCRec > &a_bcs)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_set_covered_nodes (int i, int j, int k, int n, int icomp, Array4< Real > const &d, Array4< EBCellFlag const > const &f, Real v)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_set_covered_nodes (int i, int j, int k, int n, int icomp, Array4< Real > const &d, Array4< EBCellFlag const > const &f, Real const *AMREX_RESTRICT v)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_avgdown_with_vol (int i, int j, int k, Array4< Real const > const &fine, int fcomp, Array4< Real > const &crse, int ccomp, Array4< Real const > const &fv, Array4< Real const > const &vfrc, Dim3 const &ratio, int ncomp)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_avgdown (int i, int j, int k, Array4< Real const > const &fine, int fcomp, Array4< Real > const &crse, int ccomp, Array4< Real const > const &vfrc, Dim3 const &ratio, int ncomp)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_avgdown_face_x (int i, int j, int k, Array4< Real const > const &fine, int fcomp, Array4< Real > const &crse, int ccomp, Array4< Real const > const &area, Dim3 const &ratio, int ncomp)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_avgdown_face_y (int i, int j, int k, Array4< Real const > const &fine, int fcomp, Array4< Real > const &crse, int ccomp, Array4< Real const > const &area, Dim3 const &ratio, int ncomp)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_avgdown_boundaries (int i, int j, int k, Array4< Real const > const &fine, int fcomp, Array4< Real > const &crse, int ccomp, Array4< Real const > const &ba, Dim3 const &ratio, int ncomp)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_compute_divergence (int i, int j, int k, int n, Array4< Real > const &divu, Array4< Real const > const &u, Array4< Real const > const &v, Array4< int const > const &ccm, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vfrc, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &fcx, Array4< Real const > const &fcy, GpuArray< Real, 2 > const &dxinv, bool already_on_centroids)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_avg_fc_to_cc (int i, int j, int k, int n, Array4< Real > const &cc, Array4< Real const > const &fx, Array4< Real const > const &fy, Array4< Real const > const &ax, Array4< Real const > const &ay, Array4< EBCellFlag const > const &flag)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_interp_cc2cent (Box const &box, const Array4< Real > &phicent, Array4< Real const > const &phicc, Array4< EBCellFlag const > const &flag, Array4< Real const > const &cent, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_interp_cc2facecent_x (Box const &ubx, Array4< Real const > const &phi, Array4< Real const > const &apx, Array4< Real const > const &fcx, Array4< Real > const &edg_x, int ncomp, const Box &domain, const BCRec *bc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_interp_cc2facecent_y (Box const &vbx, Array4< Real const > const &phi, Array4< Real const > const &apy, Array4< Real const > const &fcy, Array4< Real > const &edg_y, int ncomp, const Box &domain, const BCRec *bc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_interp_centroid2facecent_x (Box const &ubx, Array4< Real const > const &phi, Array4< Real const > const &apx, Array4< Real const > const &cvol, Array4< Real const > const &ccent, Array4< Real const > const &fcx, Array4< Real > const &edg_x, int ncomp, const Box &domain, const BCRec *bc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_interp_centroid2facecent_y (Box const &vbx, Array4< Real const > const &phi, Array4< Real const > const &apy, Array4< Real const > const &cvol, Array4< Real const > const &ccent, Array4< Real const > const &fcy, Array4< Real > const &edg_y, int ncomp, const Box &domain, const BCRec *bc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_interp_cc2face_x (Box const &ubx, Array4< Real const > const &phi, Array4< Real > const &edg_x, int ncomp, const Box &domain, const BCRec *bc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_interp_cc2face_y (Box const &vbx, Array4< Real const > const &phi, Array4< Real > const &edg_y, int ncomp, const Box &domain, const BCRec *bc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real EB_interp_in_quad (Real xint, Real yint, Real v0, Real v1, Real v2, Real v3, Real x0, Real y0, Real x1, Real y1, Real x2, Real y2, Real x3, Real y3)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_avgdown_face_z (int i, int j, int k, Array4< Real const > const &fine, int fcomp, Array4< Real > const &crse, int ccomp, Array4< Real const > const &area, Dim3 const &ratio, int ncomp)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_compute_divergence (int i, int j, int k, int n, Array4< Real > const &divu, Array4< Real const > const &u, Array4< Real const > const &v, Array4< Real const > const &w, Array4< int const > const &ccm, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vfrc, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &apz, Array4< Real const > const &fcx, Array4< Real const > const &fcy, Array4< Real const > const &fcz, GpuArray< Real, 3 > const &dxinv, bool already_on_centroids)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_avg_fc_to_cc (int i, int j, int k, int n, Array4< Real > const &cc, Array4< Real const > const &fx, Array4< Real const > const &fy, Array4< Real const > const &fz, Array4< Real const > const &ax, Array4< Real const > const &ay, Array4< Real const > const &az, Array4< EBCellFlag const > const &flag)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_interp_cc2facecent_z (Box const &wbx, Array4< Real const > const &phi, Array4< Real const > const &apz, Array4< Real const > const &fcz, Array4< Real > const &edg_z, int ncomp, const Box &domain, const BCRec *bc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_interp_centroid2facecent_z (Box const &wbx, Array4< Real const > const &phi, Array4< Real const > const &apz, Array4< Real const > const &cvol, Array4< Real const > const &ccent, Array4< Real const > const &fcz, Array4< Real > const &phi_z, int ncomp, const Box &domain, const BCRec *bc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void eb_interp_cc2face_z (Box const &wbx, Array4< Real const > const &phi, Array4< Real > const &edg_z, int ncomp, const Box &domain, const BCRec *bc) noexcept
 
void WriteEBSurface (const BoxArray &ba, const DistributionMapping &dmap, const Geometry &geom, const EBFArrayBoxFactory *ebf)
 
bool Nestsets (const int level, const int n_levels, const FArrayBox &fab, const Vector< const BoxArray * > box_arrays, const Vector< IntVect > &ref_ratio, const Vector< int > &domain_offsets, conduit::Node &nestset)
 
void FabToBlueprintTopology (const Geometry &geom, const FArrayBox &fab, Node &res)
 
void AddFabGhostIndicatorField (const FArrayBox &fab, int ngrow, Node &res)
 
void FabToBlueprintFields (const FArrayBox &fab, const Vector< std::string > &varnames, Node &res)
 
void SingleLevelToBlueprint (const MultiFab &mf, const Vector< std::string > &varnames, const Geometry &geom, Real time_value, int level_step, Node &res)
 
void MultiLevelToBlueprint (int n_levels, const Vector< const MultiFab * > &mfs, const Vector< std::string > &varnames, const Vector< Geometry > &geoms, Real time_value, const Vector< int > &level_steps, const Vector< IntVect > &ref_ratio, Node &res)
 
void WriteBlueprintFiles (const conduit::Node &bp_mesh, const std::string &fname_base, int step, const std::string &protocol)
 
void SingleLevelToBlueprint (const MultiFab &mf, const Vector< std::string > &varnames, const Geometry &geom, Real time_value, int level_step, conduit::Node &bp_mesh)
 
void MultiLevelToBlueprint (int n_levels, const Vector< const MultiFab * > &mfs, const Vector< std::string > &varnames, const Vector< Geometry > &geoms, Real time_value, const Vector< int > &level_steps, const Vector< IntVect > &ref_ratio, conduit::Node &bp_mesh)
 
template<int NStructReal, int NStructInt, int NArrayReal, int NArrayInt>
void ParticleTileToBlueprint (const ParticleTile< NStructReal, NStructInt, NArrayReal, NArrayInt > &ptile, const Vector< std::string > &real_comp_names, const Vector< std::string > &int_comp_names, conduit::Node &res, const std::string &topology_name)
 
template<int NStructReal, int NStructInt, int NArrayReal, int NArrayInt>
void ParticleContainerToBlueprint (const ParticleContainer< NStructReal, NStructInt, NArrayReal, NArrayInt > &pc, const Vector< std::string > &real_comp_names, const Vector< std::string > &int_comp_names, conduit::Node &res, const std::string &topology_name)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void habec_mat (GpuArray< Real, 2 *AMREX_SPACEDIM+1 > &sten, int i, int j, int k, Dim3 const &boxlo, Dim3 const &boxhi, Real sa, Array4< Real const > const &a, Real sb, GpuArray< Real, AMREX_SPACEDIM > const &dx, GpuArray< Array4< Real const >, AMREX_SPACEDIM > const &b, GpuArray< int, AMREX_SPACEDIM *2 > const &bctype, GpuArray< Real, AMREX_SPACEDIM *2 > const &bcl, int bho, GpuArray< Array4< int const >, AMREX_SPACEDIM *2 > const &msk, Array4< Real > const &diaginv)
 
template<typename Int >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void habec_ijmat (GpuArray< Real, 2 *AMREX_SPACEDIM+1 > &sten, Array4< Int > const &ncols, Array4< Real > const &diaginv, int i, int j, int k, Array4< Int const > const &cell_id, Real sa, Array4< Real const > const &a, Real sb, GpuArray< Real, AMREX_SPACEDIM > const &dx, GpuArray< Array4< Real const >, AMREX_SPACEDIM > const &b, GpuArray< int, AMREX_SPACEDIM *2 > const &bctype, GpuArray< Real, AMREX_SPACEDIM *2 > const &bcl, int bho, Array4< int const > const &osm)
 
template<typename Int >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void habec_cols (GpuArray< Int, 2 *AMREX_SPACEDIM+1 > &sten, int i, int j, int, Array4< Int const > const &cell_id)
 
std::unique_ptr< HypremakeHypre (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_, Hypre::Interface interface, const iMultiFab *overset_mask)
 
std::unique_ptr< PETScABecLapmakePetsc (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
 
std::string SanitizeName (const std::string &sname)
 
void SimpleRemoveOverlap (BoxArray &ba)
 
void avgDown_doit (const FArrayBox &fine_fab, FArrayBox &crse_fab, const Box &ovlp, int scomp, int dcomp, int ncomp, Vector< int > &ratio)
 
Box FixCoarseBoxSize (const Box &fineBox, int rr)
 
void avgDown (MultiFab &S_crse, MultiFab &S_fine, int scomp, int dcomp, int ncomp, Vector< int > &ratio)
 
void PrintTimeRangeList (const std::list< RegionsProfStats::TimeRange > &trList)
 
void RedistFiles ()
 
int NHops (const Box &tbox, const IntVect &ivfrom, const IntVect &ivto)
 
void Write2DFab (const string &filenameprefix, const int xdim, const int ydim, const double *data)
 
void Write2DText (const string &filenameprefix, const int xdim, const int ydim, const double *data)
 
void Write3DFab (const string &filenameprefix, const int xdim, const int ydim, const int zdim, const double *data)
 
void WriteFab (const string &filenameprefix, const int xdim, const int ydim, const double *data)
 
long FileSize (const std::string &filename)
 
void MakeFuncPctTimesMF (const Vector< Vector< BLProfStats::FuncStat > > &funcStats, const Vector< std::string > &blpFNames, const std::map< std::string, BLProfiler::ProfStats > &mProfStats, Real runTime, int dataNProcs)
 
void CollectMProfStats (std::map< std::string, BLProfiler::ProfStats > &mProfStats, const Vector< Vector< BLProfStats::FuncStat > > &funcStats, const Vector< std::string > &fNames, Real runTime, int whichProc)
 
void GraphTopPct (const std::map< std::string, BLProfiler::ProfStats > &mProfStats, const Vector< Vector< BLProfStats::FuncStat > > &funcStats, const Vector< std::string > &fNames, Real runTime, int dataNProcs, Real gPercent)
 
void WritePlotfile (const std::string &pfversion, const Vector< MultiFab > &data, const Real time, const Vector< Real > &probLo, const Vector< Real > &probHi, const Vector< int > &refRatio, const Vector< Box > &probDomain, const Vector< Vector< Real > > &dxLevel, const int coordSys, const std::string &oFile, const Vector< std::string > &names, const bool verbose, const bool isCartGrid, const Real *vfeps, const int *levelSteps)
 
std::string VisMFBaseName (const std::string &filename)
 
void Write2DBoxFrom3D (const Box &box, std::ostream &os, int whichPlane)
 
VisMF::FabOnDisk VisMFWrite (const FArrayBox &fabIn, const std::string &filename, std::ostream &os, long &bytes, int whichPlane)
 
static std::ostream & operator<< (std::ostream &os, const Vector< Vector< Real > > &ar)
 
long VisMFWriteHeader (const std::string &mf_name, VisMF::Header &hdr, int whichPlane)
 
void WritePlotfile2DFrom3D (const std::string &pfversion, const Vector< MultiFab > &data, const Real time, const Vector< Real > &probLo, const Vector< Real > &probHi, const Vector< int > &refRatio, const Vector< Box > &probDomain, const Vector< Vector< Real > > &dxLevel, const int coordSys, const std::string &oFile, const Vector< std::string > &names, const bool verbose, const bool isCartGrid, const Real *vfeps, const int *levelSteps)
 
 senseiNewMacro (AmrDataAdaptor)
 
 senseiNewMacro (AmrMeshDataAdaptor)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_adotx (int i, int, int, int n, Array4< Real > const &y, Array4< Real const > const &x, Array4< Real const > const &a, Array4< Real const > const &bX, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_adotx_os (int i, int, int, int n, Array4< Real > const &y, Array4< Real const > const &x, Array4< Real const > const &a, Array4< Real const > const &bX, Array4< int const > const &osm, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_normalize (int i, int, int, int n, Array4< Real > const &x, Array4< Real const > const &a, Array4< Real const > const &bX, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_flux_x (Box const &box, Array4< Real > const &fx, Array4< Real const > const &sol, Array4< Real const > const &bx, Real fac, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_flux_xface (Box const &box, Array4< Real > const &fx, Array4< Real const > const &sol, Array4< Real const > const &bx, Real fac, int xlen, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void abec_gsrb (int i, int, int, int n, Array4< Real > const &phi, Array4< Real const > const &rhs, Real alpha, Array4< Real const > const &a, Real dhx, Array4< Real const > const &bX, Array4< int const > const &m0, Array4< int const > const &m1, Array4< Real const > const &f0, Array4< Real const > const &f1, Box const &vbox, int redblack) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void abec_gsrb_os (int i, int, int, int n, Array4< Real > const &phi, Array4< Real const > const &rhs, Real alpha, Array4< Real const > const &a, Real dhx, Array4< Real const > const &bX, Array4< int const > const &m0, Array4< int const > const &m1, Array4< Real const > const &f0, Array4< Real const > const &f1, Array4< int const > const &osm, Box const &vbox, int redblack) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void abec_gsrb_with_line_solve (Box const &, Array4< Real > const &, Array4< Real const > const &, Real, Array4< Real const > const &, Real, Array4< Real const > const &, Array4< int const > const &, Array4< int const > const &, Array4< Real const > const &, Array4< Real const > const &, Box const &, int, int) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void overset_rescale_bcoef_x (Box const &box, Array4< Real > const &bX, Array4< int const > const &osm, int ncomp, Real osfac) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_adotx (int i, int j, int, int n, Array4< Real > const &y, Array4< Real const > const &x, Array4< Real const > const &a, Array4< Real const > const &bX, Array4< Real const > const &bY, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_adotx_os (int i, int j, int, int n, Array4< Real > const &y, Array4< Real const > const &x, Array4< Real const > const &a, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< int const > const &osm, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_normalize (int i, int j, int, int n, Array4< Real > const &x, Array4< Real const > const &a, Array4< Real const > const &bX, Array4< Real const > const &bY, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_flux_y (Box const &box, Array4< Real > const &fy, Array4< Real const > const &sol, Array4< Real const > const &by, Real fac, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_flux_yface (Box const &box, Array4< Real > const &fy, Array4< Real const > const &sol, Array4< Real const > const &by, Real fac, int ylen, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void abec_gsrb (int i, int j, int, int n, Array4< Real > const &phi, Array4< Real const > const &rhs, Real alpha, Array4< Real const > const &a, Real dhx, Real dhy, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< int const > const &m0, Array4< int const > const &m2, Array4< int const > const &m1, Array4< int const > const &m3, Array4< Real const > const &f0, Array4< Real const > const &f2, Array4< Real const > const &f1, Array4< Real const > const &f3, Box const &vbox, int redblack) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void abec_gsrb_os (int i, int j, int, int n, Array4< Real > const &phi, Array4< Real const > const &rhs, Real alpha, Array4< Real const > const &a, Real dhx, Real dhy, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< int const > const &m0, Array4< int const > const &m2, Array4< int const > const &m1, Array4< int const > const &m3, Array4< Real const > const &f0, Array4< Real const > const &f2, Array4< Real const > const &f1, Array4< Real const > const &f3, Array4< int const > const &osm, Box const &vbox, int redblack) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void abec_gsrb_with_line_solve (Box const &box, Array4< Real > const &phi, Array4< Real const > const &rhs, Real alpha, Array4< Real const > const &a, Real dhx, Real dhy, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< int const > const &m0, Array4< int const > const &m2, Array4< int const > const &m1, Array4< int const > const &m3, Array4< Real const > const &f0, Array4< Real const > const &f2, Array4< Real const > const &f1, Array4< Real const > const &f3, Box const &vbox, int redblack, int nc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void overset_rescale_bcoef_y (Box const &box, Array4< Real > const &bY, Array4< int const > const &osm, int ncomp, Real osfac) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_adotx (int i, int j, int k, int n, Array4< Real > const &y, Array4< Real const > const &x, Array4< Real const > const &a, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< Real const > const &bZ, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_adotx_os (int i, int j, int k, int n, Array4< Real > const &y, Array4< Real const > const &x, Array4< Real const > const &a, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< Real const > const &bZ, Array4< int const > const &osm, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_normalize (int i, int j, int k, int n, Array4< Real > const &x, Array4< Real const > const &a, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< Real const > const &bZ, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_flux_z (Box const &box, Array4< Real > const &fz, Array4< Real const > const &sol, Array4< Real const > const &bz, Real fac, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlabeclap_flux_zface (Box const &box, Array4< Real > const &fz, Array4< Real const > const &sol, Array4< Real const > const &bz, Real fac, int zlen, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void abec_gsrb (int i, int j, int k, int n, Array4< Real > const &phi, Array4< Real const > const &rhs, Real alpha, Array4< Real const > const &a, Real dhx, Real dhy, Real dhz, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< Real const > const &bZ, Array4< int const > const &m0, Array4< int const > const &m2, Array4< int const > const &m4, Array4< int const > const &m1, Array4< int const > const &m3, Array4< int const > const &m5, Array4< Real const > const &f0, Array4< Real const > const &f2, Array4< Real const > const &f4, Array4< Real const > const &f1, Array4< Real const > const &f3, Array4< Real const > const &f5, Box const &vbox, int redblack) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void abec_gsrb_os (int i, int j, int k, int n, Array4< Real > const &phi, Array4< Real const > const &rhs, Real alpha, Array4< Real const > const &a, Real dhx, Real dhy, Real dhz, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< Real const > const &bZ, Array4< int const > const &m0, Array4< int const > const &m2, Array4< int const > const &m4, Array4< int const > const &m1, Array4< int const > const &m3, Array4< int const > const &m5, Array4< Real const > const &f0, Array4< Real const > const &f2, Array4< Real const > const &f4, Array4< Real const > const &f1, Array4< Real const > const &f3, Array4< Real const > const &f5, Array4< int const > const &osm, Box const &vbox, int redblack) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void tridiagonal_solve (Array1D< Real, 0, 31 > &a_ls, Array1D< Real, 0, 31 > &b_ls, Array1D< Real, 0, 31 > &c_ls, Array1D< Real, 0, 31 > &r_ls, Array1D< Real, 0, 31 > &u_ls, Array1D< Real, 0, 31 > &gam, int ilen) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void abec_gsrb_with_line_solve (Box const &box, Array4< Real > const &phi, Array4< Real const > const &rhs, Real alpha, Array4< Real const > const &a, Real dhx, Real dhy, Real dhz, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< Real const > const &bZ, Array4< int const > const &m0, Array4< int const > const &m2, Array4< int const > const &m4, Array4< int const > const &m1, Array4< int const > const &m3, Array4< int const > const &m5, Array4< Real const > const &f0, Array4< Real const > const &f2, Array4< Real const > const &f4, Array4< Real const > const &f1, Array4< Real const > const &f3, Array4< Real const > const &f5, Box const &vbox, int redblack, int nc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void overset_rescale_bcoef_z (Box const &box, Array4< Real > const &bZ, Array4< int const > const &osm, int ncomp, Real osfac) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_adotx (Box const &box, Array4< Real > const &y, Array4< Real const > const &x, Array4< Real const > const &a, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_adotx_m (Box const &box, Array4< Real > const &y, Array4< Real const > const &x, Array4< Real const > const &a, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta, Real dx, Real probxlo, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_normalize (Box const &box, Array4< Real > const &x, Array4< Real const > const &a, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_normalize_m (Box const &box, Array4< Real > const &x, Array4< Real const > const &a, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta, Real dx, Real probxlo, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_flux_x (Box const &box, Array4< Real > const &fx, Array4< Real const > const &sol, Real fac, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_flux_x_m (Box const &box, Array4< Real > const &fx, Array4< Real const > const &sol, Real fac, Real dx, Real probxlo, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_flux_xface (Box const &box, Array4< Real > const &fx, Array4< Real const > const &sol, Real fac, int xlen, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_flux_xface_m (Box const &box, Array4< Real > const &fx, Array4< Real const > const &sol, Real fac, int xlen, Real dx, Real probxlo, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_gsrb (Box const &box, Array4< Real > const &phi, Array4< Real const > const &rhs, Real alpha, Real dhx, Array4< Real const > const &a, Array4< Real const > const &f0, Array4< int const > const &m0, Array4< Real const > const &f1, Array4< int const > const &m1, Box const &vbox, int redblack, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_gsrb_m (Box const &box, Array4< Real > const &phi, Array4< Real const > const &rhs, Real alpha, Real dhx, Array4< Real const > const &a, Array4< Real const > const &f0, Array4< int const > const &m0, Array4< Real const > const &f1, Array4< int const > const &m1, Box const &vbox, int redblack, Real dx, Real probxlo, int ncomp)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_flux_y (Box const &box, Array4< Real > const &fy, Array4< Real const > const &sol, Real fac, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_flux_yface (Box const &box, Array4< Real > const &fy, Array4< Real const > const &sol, Real fac, int ylen, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_flux_z (Box const &box, Array4< Real > const &fz, Array4< Real const > const &sol, Real fac, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_flux_zface (Box const &box, Array4< Real > const &fz, Array4< Real const > const &sol, Real fac, int zlen, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlalap_gsrb (Box const &box, Array4< Real > const &phi, Array4< Real const > const &rhs, Real alpha, Real dhx, Real dhy, Real dhz, Array4< Real const > const &a, Array4< Real const > const &f0, Array4< int const > const &m0, Array4< Real const > const &f1, Array4< int const > const &m1, Array4< Real const > const &f2, Array4< int const > const &m2, Array4< Real const > const &f3, Array4< int const > const &m3, Array4< Real const > const &f4, Array4< int const > const &m4, Array4< Real const > const &f5, Array4< int const > const &m5, Box const &vbox, int redblack, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int coarsen_overset_mask (Box const &bx, Array4< int > const &cmsk, Array4< int const > const &fmsk) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void coarsen_overset_mask (int i, int, int, Array4< int > const &cmsk, Array4< int const > const &fmsk) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_adotx_centroid (Box const &box, Array4< Real > const &y, Array4< Real const > const &x, Array4< Real const > const &a, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vfrc, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &fcx, Array4< Real const > const &fcy, Array4< Real const > const &ccent, Array4< Real const > const &ba, Array4< Real const > const &bcent, Array4< Real const > const &beb, Array4< Real const > const &phieb, const int &domlo_x, const int &domlo_y, const int &domhi_x, const int &domhi_y, const bool &on_x_face, const bool &on_y_face, bool is_eb_dirichlet, bool is_eb_inhomog, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_adotx (Box const &box, Array4< Real > const &y, Array4< Real const > const &x, Array4< Real const > const &a, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< const int > const &ccm, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vfrc, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &fcx, Array4< Real const > const &fcy, Array4< Real const > const &ba, Array4< Real const > const &bc, Array4< Real const > const &beb, bool is_dirichlet, Array4< Real const > const &phieb, bool is_inhomog, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta, int ncomp, bool beta_on_centroid, bool phi_on_centroid) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_ebflux (int i, int j, int k, int n, Array4< Real > const &feb, Array4< Real const > const &x, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vfrc, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &bc, Array4< Real const > const &beb, Array4< Real const > const &phieb, bool is_inhomog, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_gsrb (Box const &box, Array4< Real > const &phi, Array4< Real const > const &rhs, Real alpha, Array4< Real const > const &a, Real dhx, Real dhy, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< int const > const &m0, Array4< int const > const &m2, Array4< int const > const &m1, Array4< int const > const &m3, Array4< Real const > const &f0, Array4< Real const > const &f2, Array4< Real const > const &f1, Array4< Real const > const &f3, Array4< const int > const &ccm, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vfrc, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &fcx, Array4< Real const > const &fcy, Array4< Real const > const &ba, Array4< Real const > const &bc, Array4< Real const > const &beb, bool is_dirichlet, bool beta_on_centroid, bool phi_on_centroid, Box const &vbox, int redblack, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_flux_x (Box const &box, Array4< Real > const &fx, Array4< Real const > const &apx, Array4< Real const > const &fcx, Array4< Real const > const &sol, Array4< Real const > const &bX, Array4< int const > const &ccm, Real dhx, int face_only, int ncomp, Box const &xbox, bool beta_on_centroid, bool phi_on_centroid) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_flux_y (Box const &box, Array4< Real > const &fy, Array4< Real const > const &apy, Array4< Real const > const &fcy, Array4< Real const > const &sol, Array4< Real const > const &bY, Array4< int const > const &ccm, Real dhy, int face_only, int ncomp, Box const &ybox, bool beta_on_centroid, bool phi_on_centroid) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_flux_x_0 (Box const &box, Array4< Real > const &fx, Array4< Real const > const &apx, Array4< Real const > const &sol, Array4< Real const > const &bX, Real dhx, int face_only, int ncomp, Box const &xbox) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_flux_y_0 (Box const &box, Array4< Real > const &fy, Array4< Real const > const &apy, Array4< Real const > const &sol, Array4< Real const > const &bY, Real dhy, int face_only, int ncomp, Box const &ybox) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_grad_x (Box const &box, Array4< Real > const &gx, Array4< Real const > const &sol, Array4< Real const > const &apx, Array4< Real const > const &fcx, Array4< int const > const &ccm, Real dxi, int ncomp, bool phi_on_centroid) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_grad_y (Box const &box, Array4< Real > const &gy, Array4< Real const > const &sol, Array4< Real const > const &apy, Array4< Real const > const &fcy, Array4< int const > const &ccm, Real dyi, int ncomp, bool phi_on_centroid) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_grad_x_0 (Box const &box, Array4< Real > const &gx, Array4< Real const > const &sol, Array4< Real const > const &apx, Real dxi, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_grad_y_0 (Box const &box, Array4< Real > const &gy, Array4< Real const > const &sol, Array4< Real const > const &apy, Real dyi, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_normalize (Box const &box, Array4< Real > const &phi, Real alpha, Array4< Real const > const &a, Real dhx, Real dhy, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< const int > const &ccm, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vfrc, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &fcx, Array4< Real const > const &fcy, Array4< Real const > const &ba, Array4< Real const > const &bc, Array4< Real const > const &beb, bool is_dirichlet, bool beta_on_centroid, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_adotx_centroid (Box const &box, Array4< Real > const &y, Array4< Real const > const &x, Array4< Real const > const &a, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< Real const > const &bZ, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vfrc, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &apz, Array4< Real const > const &fcx, Array4< Real const > const &fcy, Array4< Real const > const &fcz, Array4< Real const > const &ccent, Array4< Real const > const &ba, Array4< Real const > const &bcent, Array4< Real const > const &beb, Array4< Real const > const &phieb, const int &domlo_x, const int &domlo_y, const int &domlo_z, const int &domhi_x, const int &domhi_y, const int &domhi_z, const bool &on_x_face, const bool &on_y_face, const bool &on_z_face, bool is_eb_dirichlet, bool is_eb_inhomog, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_adotx (Box const &box, Array4< Real > const &y, Array4< Real const > const &x, Array4< Real const > const &a, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< Real const > const &bZ, Array4< const int > const &ccm, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vfrc, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &apz, Array4< Real const > const &fcx, Array4< Real const > const &fcy, Array4< Real const > const &fcz, Array4< Real const > const &ba, Array4< Real const > const &bc, Array4< Real const > const &beb, bool is_dirichlet, Array4< Real const > const &phieb, bool is_inhomog, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real alpha, Real beta, int ncomp, bool beta_on_centroid, bool phi_on_centroid) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_ebflux (int i, int j, int k, int n, Array4< Real > const &feb, Array4< Real const > const &x, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vfrc, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &apz, Array4< Real const > const &bc, Array4< Real const > const &beb, Array4< Real const > const &phieb, bool is_inhomog, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_gsrb (Box const &box, Array4< Real > const &phi, Array4< Real const > const &rhs, Real alpha, Array4< Real const > const &a, Real dhx, Real dhy, Real dhz, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< Real const > const &bZ, Array4< int const > const &m0, Array4< int const > const &m2, Array4< int const > const &m4, Array4< int const > const &m1, Array4< int const > const &m3, Array4< int const > const &m5, Array4< Real const > const &f0, Array4< Real const > const &f2, Array4< Real const > const &f4, Array4< Real const > const &f1, Array4< Real const > const &f3, Array4< Real const > const &f5, Array4< const int > const &ccm, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vfrc, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &apz, Array4< Real const > const &fcx, Array4< Real const > const &fcy, Array4< Real const > const &fcz, Array4< Real const > const &ba, Array4< Real const > const &bc, Array4< Real const > const &beb, bool is_dirichlet, bool beta_on_centroid, bool phi_on_centroid, Box const &vbox, int redblack, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_flux_z (Box const &box, Array4< Real > const &fz, Array4< Real const > const &apz, Array4< Real const > const &fcz, Array4< Real const > const &sol, Array4< Real const > const &bZ, Array4< int const > const &ccm, Real dhz, int face_only, int ncomp, Box const &zbox, bool beta_on_centroid, bool phi_on_centroid) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_flux_z_0 (Box const &box, Array4< Real > const &fz, Array4< Real const > const &apz, Array4< Real const > const &sol, Array4< Real const > const &bZ, Real dhz, int face_only, int ncomp, Box const &zbox) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_grad_z (Box const &box, Array4< Real > const &gz, Array4< Real const > const &sol, Array4< Real const > const &apz, Array4< Real const > const &fcz, Array4< int const > const &ccm, Real dzi, int ncomp, bool phi_on_centroid) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_grad_z_0 (Box const &box, Array4< Real > const &gz, Array4< Real const > const &sol, Array4< Real const > const &apz, Real dzi, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_normalize (Box const &box, Array4< Real > const &phi, Real alpha, Array4< Real const > const &a, Real dhx, Real dhy, Real dhz, Array4< Real const > const &bX, Array4< Real const > const &bY, Array4< Real const > const &bZ, Array4< const int > const &ccm, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vfrc, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &apz, Array4< Real const > const &fcx, Array4< Real const > const &fcy, Array4< Real const > const &fcz, Array4< Real const > const &ba, Array4< Real const > const &bc, Array4< Real const > const &beb, bool is_dirichlet, bool beta_on_centroid, int ncomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_apply_bc_x (int side, Box const &box, int blen, Array4< Real > const &phi, Array4< int const > const &mask, Array4< Real const > const &area, BoundCond bct, Real bcl, Array4< Real const > const &bcval, int maxorder, Real dxinv, int inhomog, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_apply_bc_y (int side, Box const &box, int blen, Array4< Real > const &phi, Array4< int const > const &mask, Array4< Real const > const &area, BoundCond bct, Real bcl, Array4< Real const > const &bcval, int maxorder, Real dyinv, int inhomog, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebabeclap_apply_bc_z (int side, Box const &box, int blen, Array4< Real > const &phi, Array4< int const > const &mask, Array4< Real const > const &area, BoundCond bct, Real bcl, Array4< Real const > const &bcval, int maxorder, Real dzinv, int inhomog, int icomp) noexcept
 
template<typename F >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_adotx_eb_doit (int i, int j, int k, Array4< Real > const &y, Array4< Real const > const &x, Array4< int const > const &dmsk, Array4< Real const > const &ecx, Array4< Real const > const &ecy, F &&xeb, Real bx, Real by) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_adotx_eb (int i, int j, int k, Array4< Real > const &y, Array4< Real const > const &x, Array4< int const > const &dmsk, Array4< Real const > const &ecx, Array4< Real const > const &ecy, Real xeb, Real bx, Real by) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_adotx_eb (int i, int j, int k, Array4< Real > const &y, Array4< Real const > const &x, Array4< int const > const &dmsk, Array4< Real const > const &ecx, Array4< Real const > const &ecy, Array4< Real const > const &xeb, Real bx, Real by) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_adotx (int i, int j, int k, Array4< Real > const &y, Array4< Real const > const &x, Array4< int const > const &dmsk, Array4< Real const > const &a, Real bx, Real by) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_gsrb_eb (int i, int j, int k, Array4< Real > const &x, Array4< Real const > const &rhs, Array4< int const > const &dmsk, Array4< Real const > const &ecx, Array4< Real const > const &ecy, Real bx, Real by, int redblack) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_gsrb (int i, int j, int k, Array4< Real > const &x, Array4< Real const > const &rhs, Array4< int const > const &dmsk, Array4< Real const > const &a, Real bx, Real by, int redblack) noexcept
 
template<typename F >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_adotx_eb_doit (int i, int j, int k, Array4< Real > const &y, Array4< Real const > const &x, Array4< int const > const &dmsk, Array4< Real const > const &ecx, Array4< Real const > const &ecy, Array4< Real const > const &ecz, F &&xeb, Real bx, Real by, Real bz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_adotx_eb (int i, int j, int k, Array4< Real > const &y, Array4< Real const > const &x, Array4< int const > const &dmsk, Array4< Real const > const &ecx, Array4< Real const > const &ecy, Array4< Real const > const &ecz, Real xeb, Real bx, Real by, Real bz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_adotx_eb (int i, int j, int k, Array4< Real > const &y, Array4< Real const > const &x, Array4< int const > const &dmsk, Array4< Real const > const &ecx, Array4< Real const > const &ecy, Array4< Real const > const &ecz, Array4< Real const > const &xeb, Real bx, Real by, Real bz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_adotx (int i, int j, int k, Array4< Real > const &y, Array4< Real const > const &x, Array4< int const > const &dmsk, Array4< Real const > const &a, Real bx, Real by, Real bz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_gsrb_eb (int i, int j, int k, Array4< Real > const &x, Array4< Real const > const &rhs, Array4< int const > const &dmsk, Array4< Real const > const &ecx, Array4< Real const > const &ecy, Array4< Real const > const &ecz, Real bx, Real by, Real bz, int redblack) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_gsrb (int i, int j, int k, Array4< Real > const &x, Array4< Real const > const &rhs, Array4< int const > const &dmsk, Array4< Real const > const &a, Real bx, Real by, Real bz, int redblack) noexcept
 
template<typename F >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_grad_x_doit (int i, int j, int k, Array4< Real > const &px, Array4< Real const > const &p, Array4< int const > const &dmsk, Array4< Real const > const &ecx, F &&phieb, Real dxi)
 
template<typename F >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_grad_y_doit (int i, int j, int k, Array4< Real > const &py, Array4< Real const > const &p, Array4< int const > const &dmsk, Array4< Real const > const &ecy, F &&phieb, Real dyi)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_grad_x (Box const &b, Array4< Real > const &px, Array4< Real const > const &p, Array4< int const > const &dmsk, Array4< Real const > const &ecx, Real phieb, Real dxi)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_grad_x (Box const &b, Array4< Real > const &px, Array4< Real const > const &p, Array4< int const > const &dmsk, Array4< Real const > const &ecx, Array4< Real const > const &phieb, Real dxi)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_grad_y (Box const &b, Array4< Real > const &py, Array4< Real const > const &p, Array4< int const > const &dmsk, Array4< Real const > const &ecy, Real phieb, Real dyi)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebndfdlap_grad_y (Box const &b, Array4< Real > const &py, Array4< Real const > const &p, Array4< int const > const &dmsk, Array4< Real const > const &ecy, Array4< Real const > const &phieb, Real dyi)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebtensor_cross_terms_fx (Box const &box, Array4< Real > const &fx, Array4< Real const > const &vel, Array4< Real const > const &etax, Array4< Real const > const &kapx, Array4< Real const > const &apx, Array4< EBCellFlag const > const &flag, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebtensor_cross_terms_fy (Box const &box, Array4< Real > const &fy, Array4< Real const > const &vel, Array4< Real const > const &etay, Array4< Real const > const &kapy, Array4< Real const > const &apy, Array4< EBCellFlag const > const &flag, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebtensor_cross_terms (Box const &box, Array4< Real > const &Ax, Array4< Real const > const &fx, Array4< Real const > const &fy, Array4< Real const > const &vel, Array4< Real const > const &etab, Array4< Real const > const &kapb, Array4< int const > const &ccm, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vol, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &fcx, Array4< Real const > const &fcy, Array4< Real const > const &bc, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real bscalar) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebtensor_flux_0 (Box const &box, Array4< Real > const &Ax, Array4< Real const > const &fx, Array4< Real const > const &ap, Real bscalar) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebtensor_flux_x (Box const &box, Array4< Real > const &Ax, Array4< Real const > const &fx, Array4< Real const > const &apx, Array4< Real const > const &fcx, Real const bscalar, Array4< int const > const &ccm, int face_only, Box const &xbox) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebtensor_flux_y (Box const &box, Array4< Real > const &Ay, Array4< Real const > const &fy, Array4< Real const > const &apy, Array4< Real const > const &fcy, Real const bscalar, Array4< int const > const &ccm, int face_only, Box const &ybox) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebtensor_cross_terms_fz (Box const &box, Array4< Real > const &fz, Array4< Real const > const &vel, Array4< Real const > const &etaz, Array4< Real const > const &kapz, Array4< Real const > const &apz, Array4< EBCellFlag const > const &flag, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebtensor_cross_terms (Box const &box, Array4< Real > const &Ax, Array4< Real const > const &fx, Array4< Real const > const &fy, Array4< Real const > const &fz, Array4< Real const > const &vel, Array4< Real const > const &etab, Array4< Real const > const &kapb, Array4< int const > const &ccm, Array4< EBCellFlag const > const &flag, Array4< Real const > const &vol, Array4< Real const > const &apx, Array4< Real const > const &apy, Array4< Real const > const &apz, Array4< Real const > const &fcx, Array4< Real const > const &fcy, Array4< Real const > const &fcz, Array4< Real const > const &bc, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real bscalar) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlebtensor_flux_z (Box const &box, Array4< Real > const &Az, Array4< Real const > const &fz, Array4< Real const > const &apz, Array4< Real const > const &fcz, Real const bscalar, Array4< int const > const &ccm, int face_only, Box const &zbox) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_bc_x (int side, Box const &box, int blen, Array4< Real > const &phi, Array4< int const > const &mask, BoundCond bct, Real bcl, Array4< Real const > const &bcval, int maxorder, Real dxinv, int inhomog, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_bc_x (int side, int i, int j, int k, int blen, Array4< Real > const &phi, Array4< int const > const &mask, BoundCond bct, Real bcl, Array4< Real const > const &bcval, int maxorder, Real dxinv, int inhomog, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_bc_y (int side, Box const &box, int blen, Array4< Real > const &phi, Array4< int const > const &mask, BoundCond bct, Real bcl, Array4< Real const > const &bcval, int maxorder, Real dyinv, int inhomog, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_bc_y (int side, int i, int j, int k, int blen, Array4< Real > const &phi, Array4< int const > const &mask, BoundCond bct, Real bcl, Array4< Real const > const &bcval, int maxorder, Real dyinv, int inhomog, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_bc_z (int side, Box const &box, int blen, Array4< Real > const &phi, Array4< int const > const &mask, BoundCond bct, Real bcl, Array4< Real const > const &bcval, int maxorder, Real dzinv, int inhomog, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_bc_z (int side, int i, int j, int k, int blen, Array4< Real > const &phi, Array4< int const > const &mask, BoundCond bct, Real bcl, Array4< Real const > const &bcval, int maxorder, Real dzinv, int inhomog, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_comp_interp_coef0_x (int side, Box const &box, int blen, Array4< Real > const &f, Array4< int const > const &mask, BoundCond bct, Real bcl, int maxorder, Real dxinv, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_comp_interp_coef0_x (int side, int i, int j, int k, int blen, Array4< Real > const &f, Array4< int const > const &mask, BoundCond bct, Real bcl, int maxorder, Real dxinv, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_comp_interp_coef0_y (int side, Box const &box, int blen, Array4< Real > const &f, Array4< int const > const &mask, BoundCond bct, Real bcl, int maxorder, Real dyinv, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_comp_interp_coef0_y (int side, int i, int j, int k, int blen, Array4< Real > const &f, Array4< int const > const &mask, BoundCond bct, Real bcl, int maxorder, Real dyinv, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_comp_interp_coef0_z (int side, Box const &box, int blen, Array4< Real > const &f, Array4< int const > const &mask, BoundCond bct, Real bcl, int maxorder, Real dzinv, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_comp_interp_coef0_z (int side, int i, int j, int k, int blen, Array4< Real > const &f, Array4< int const > const &mask, BoundCond bct, Real bcl, int maxorder, Real dzinv, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_innu_xlo (int i, int j, int k, Array4< Real > const &rhs, Array4< int const > const &mask, Array4< Real const > const &bcoef, BoundCond bct, Real, Array4< Real const > const &bcval, Real fac, bool has_bcoef, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_innu_xhi (int i, int j, int k, Array4< Real > const &rhs, Array4< int const > const &mask, Array4< Real const > const &bcoef, BoundCond bct, Real, Array4< Real const > const &bcval, Real fac, bool has_bcoef, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_innu_ylo (int i, int j, int k, Array4< Real > const &rhs, Array4< int const > const &mask, Array4< Real const > const &bcoef, BoundCond bct, Real, Array4< Real const > const &bcval, Real fac, bool has_bcoef, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_innu_ylo_m (int i, int j, int k, Array4< Real > const &rhs, Array4< int const > const &mask, BoundCond bct, Real, Array4< Real const > const &bcval, Real fac, Real xlo, Real dx, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_innu_yhi (int i, int j, int k, Array4< Real > const &rhs, Array4< int const > const &mask, Array4< Real const > const &bcoef, BoundCond bct, Real, Array4< Real const > const &bcval, Real fac, bool has_bcoef, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_innu_yhi_m (int i, int j, int k, Array4< Real > const &rhs, Array4< int const > const &mask, BoundCond bct, Real, Array4< Real const > const &bcval, Real fac, Real xlo, Real dx, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_innu_zlo (int i, int j, int k, Array4< Real > const &rhs, Array4< int const > const &mask, Array4< Real const > const &bcoef, BoundCond bct, Real, Array4< Real const > const &bcval, Real fac, bool has_bcoef, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mllinop_apply_innu_zhi (int i, int j, int k, Array4< Real > const &rhs, Array4< int const > const &mask, Array4< Real const > const &bcoef, BoundCond bct, Real, Array4< Real const > const &bcval, Real fac, bool has_bcoef, int icomp) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlmg_lin_cc_interp_r2 (Box const &bx, Array4< Real > const &ff, Array4< Real const > const &cc, int nc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlmg_lin_cc_interp_r4 (Box const &bx, Array4< Real > const &ff, Array4< Real const > const &cc, int nc) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlmg_lin_nd_interp_r2 (int i, int, int, int n, Array4< Real > const &fine, Array4< Real const > const &crse) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlmg_lin_nd_interp_r4 (int i, int, int, int n, Array4< Real > const &fine, Array4< Real const > const &crse) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_set_nodal_mask (int, int, int, Array4< int > const &, Array4< int const > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_set_dirichlet_mask (Box const &, Array4< int > const &, Array4< int const > const &, Box const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_set_dot_mask (Box const &, Array4< Real > const &, Array4< int const > const &, Box const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_zero_fine (int, int, int, Array4< Real > const &, Array4< int const > const &, int) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_avgdown_coeff_x (int, int, int, Array4< Real > const &, Array4< Real const > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_semi_avgdown_coeff (int, int, int, Array4< Real > const &, Array4< Real const > const &, int) noexcept
 
template<typename T >
void mlndlap_bc_doit (Box const &, Array4< T > const &, Box const &, GpuArray< bool, AMREX_SPACEDIM > const &, GpuArray< bool, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real mlndlap_adotx_c (int, int, int, Array4< Real const > const &, Real, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real mlndlap_adotx_ha (int, int, int, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real mlndlap_adotx_aa (int, int, int, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_normalize_ha (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_normalize_aa (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_jacobi_ha (int, int, int, Array4< Real > const &, Real, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_jacobi_ha (Box const &, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_jacobi_aa (int, int, int, Array4< Real > const &, Real, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_jacobi_aa (Box const &, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_jacobi_c (int, int, int, Array4< Real > const &, Real, Array4< Real const > const &, Real, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_jacobi_c (Box const &, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Real, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_gauss_seidel_ha (Box const &, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_gauss_seidel_aa (Box const &, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_gauss_seidel_c (Box const &, Array4< Real > const &, Array4< Real const > const &, Real, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_gauss_seidel_with_line_solve_aa (Box const &, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_restriction (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< int const > const &) noexcept
 
template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_restriction (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< int const > const &, Box const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_semi_restriction (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< int const > const &, int) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_interpadd_c (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< int const > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_interpadd_aa (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_semi_interpadd_aa (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &, int) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_interpadd_ha (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_divu (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &, Box const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real mlndlap_rhcc (int, int, int, Array4< Real const > const &, Array4< int const > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_mknewu (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_mknewu_c (int, int, int, Array4< Real > const &, Array4< Real const > const &, Real, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_rhcc_fine_contrib (int, int, int, Box const &, Array4< Real > const &, Array4< Real const > const &, Array4< int const > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_divu_cf_contrib (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &, Array4< int const > const &, Array4< int const > const &, GpuArray< Real, AMREX_SPACEDIM > const &, Box const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &, bool) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_crse_resid (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< int const > const &, Box const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &, bool) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_res_cf_contrib (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &, Array4< int const > const &, Array4< int const > const &, Array4< Real const > const &, GpuArray< Real, AMREX_SPACEDIM > const &, Box const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &, bool) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_res_cf_contrib_cs (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Real, Array4< int const > const &, Array4< int const > const &, Array4< int const > const &, Array4< Real const > const &, GpuArray< Real, AMREX_SPACEDIM > const &, Box const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &, bool) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_set_stencil (Box const &, Array4< Real > const &, Array4< Real const > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_set_stencil_s0 (int, int, int, Array4< Real > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_stencil_rap (int, int, int, Array4< Real > const &, Array4< Real const > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real mlndlap_adotx_sten (int, int, int, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_gauss_seidel_sten (Box const &, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_interpadd_rap (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_restriction_rap (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< Real const > const &, Array4< int const > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_avgdown_coeff_y (int i, int j, int k, Array4< Real > const &crse, Array4< Real const > const &fine) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real mlndlap_adotx_ha (int i, int j, int k, Array4< Real const > const &x, Array4< Real const > const &sx, Array4< Real const > const &sy, Array4< int const > const &msk, bool is_rz, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real mlndlap_adotx_aa (int i, int j, int k, Array4< Real const > const &x, Array4< Real const > const &sig, Array4< int const > const &msk, bool is_rz, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real mlndlap_adotx_c (int i, int j, int k, Array4< Real const > const &x, Real sigma, Array4< int const > const &msk, bool is_rz, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_normalize_ha (int i, int j, int k, Array4< Real > const &x, Array4< Real const > const &sx, Array4< Real const > const &sy, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_jacobi_ha (int i, int j, int k, Array4< Real > const &sol, Real Ax, Array4< Real const > const &rhs, Array4< Real const > const &sx, Array4< Real const > const &sy, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_jacobi_ha (Box const &bx, Array4< Real > const &sol, Array4< Real const > const &Ax, Array4< Real const > const &rhs, Array4< Real const > const &sx, Array4< Real const > const &sy, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_gauss_seidel_ha (Box const &bx, Array4< Real > const &sol, Array4< Real const > const &rhs, Array4< Real const > const &sx, Array4< Real const > const &sy, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, bool is_rz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_gauss_seidel_aa (Box const &bx, Array4< Real > const &sol, Array4< Real const > const &rhs, Array4< Real const > const &sig, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, bool is_rz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_gauss_seidel_c (Box const &bx, Array4< Real > const &sol, Array4< Real const > const &rhs, Real sig, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, bool is_rz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_gauss_seidel_with_line_solve_aa (Box const &bx, Array4< Real > const &sol, Array4< Real const > const &rhs, Array4< Real const > const &sig, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, bool is_rz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_interpadd_ha (int i, int j, int, Array4< Real > const &fine, Array4< Real const > const &crse, Array4< Real const > const &sigx, Array4< Real const > const &sigy, Array4< int const > const &msk) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_divu (int i, int j, int k, Array4< Real > const &rhs, Array4< Real const > const &vel, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Box const &nodal_domain, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bclo, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bchi, bool is_rz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_mknewu (int i, int j, int k, Array4< Real > const &u, Array4< Real const > const &p, Array4< Real const > const &sig, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, bool is_rz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_mknewu_c (int i, int j, int k, Array4< Real > const &u, Array4< Real const > const &p, Real sig, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, bool is_rz) noexcept
 
template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_divu_fine_contrib (int i, int j, int, Box const &fvbx, Box const &velbx, Array4< Real > const &rhs, Array4< Real const > const &vel, Array4< Real const > const &frhs, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, bool is_rz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_divu_cf_contrib (int i, int j, int, Array4< Real > const &rhs, Array4< Real const > const &vel, Array4< Real const > const &fc, Array4< Real const > const &rhcc, Array4< int const > const &dmsk, Array4< int const > const &ndmsk, Array4< int const > const &ccmsk, bool is_rz, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Box const &ccdom_p, Box const &veldom, Box const &nddom, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bclo, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bchi) noexcept
 
template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_Ax_fine_contrib (int i, int j, int, Box const &ndbx, Box const &ccbx, Array4< Real > const &f, Array4< Real const > const &res, Array4< Real const > const &rhs, Array4< Real const > const &phi, Array4< Real const > const &sig, Array4< int const > const &msk, bool is_rz, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_Ax_fine_contrib_cs (int i, int j, int, Box const &ndbx, Box const &ccbx, Array4< Real > const &f, Array4< Real const > const &res, Array4< Real const > const &rhs, Array4< Real const > const &phi, Real const sig, Array4< int const > const &msk, bool is_rz, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_res_cf_contrib (int i, int j, int, Array4< Real > const &res, Array4< Real const > const &phi, Array4< Real const > const &rhs, Array4< Real const > const &sig, Array4< int const > const &dmsk, Array4< int const > const &ndmsk, Array4< int const > const &ccmsk, Array4< Real const > const &fc, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Box const &ccdom_p, Box const &nddom, bool is_rz, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bclo, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bchi, bool neumann_doubling) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_res_cf_contrib_cs (int i, int j, int, Array4< Real > const &res, Array4< Real const > const &phi, Array4< Real const > const &rhs, Real const sig, Array4< int const > const &dmsk, Array4< int const > const &ndmsk, Array4< int const > const &ccmsk, Array4< Real const > const &fc, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Box const &ccdom_p, Box const &nddom, bool is_rz, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bclo, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bchi, bool neumann_doubling) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_avgdown_coeff_z (int i, int j, int k, Array4< Real > const &crse, Array4< Real const > const &fine) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real mlndlap_adotx_ha (int i, int j, int k, Array4< Real const > const &x, Array4< Real const > const &sx, Array4< Real const > const &sy, Array4< Real const > const &sz, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_normalize_ha (int i, int j, int k, Array4< Real > const &x, Array4< Real const > const &sx, Array4< Real const > const &sy, Array4< Real const > const &sz, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_jacobi_ha (int i, int j, int k, Array4< Real > const &sol, Real Ax, Array4< Real const > const &rhs, Array4< Real const > const &sx, Array4< Real const > const &sy, Array4< Real const > const &sz, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_jacobi_ha (Box const &bx, Array4< Real > const &sol, Array4< Real const > const &Ax, Array4< Real const > const &rhs, Array4< Real const > const &sx, Array4< Real const > const &sy, Array4< Real const > const &sz, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_gauss_seidel_ha (Box const &bx, Array4< Real > const &sol, Array4< Real const > const &rhs, Array4< Real const > const &sx, Array4< Real const > const &sy, Array4< Real const > const &sz, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_interpadd_ha (int i, int j, int k, Array4< Real > const &fine, Array4< Real const > const &crse, Array4< Real const > const &sigx, Array4< Real const > const &sigy, Array4< Real const > const &sigz, Array4< int const > const &msk) noexcept
 
template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_divu_fine_contrib (int i, int j, int k, Box const &fvbx, Box const &velbx, Array4< Real > const &rhs, Array4< Real const > const &vel, Array4< Real const > const &frhs, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_divu_cf_contrib (int i, int j, int k, Array4< Real > const &rhs, Array4< Real const > const &vel, Array4< Real const > const &fc, Array4< Real const > const &rhcc, Array4< int const > const &dmsk, Array4< int const > const &ndmsk, Array4< int const > const &ccmsk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Box const &ccdom_p, Box const &veldom, Box const &nddom, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bclo, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bchi) noexcept
 
template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_Ax_fine_contrib (int i, int j, int k, Box const &ndbx, Box const &ccbx, Array4< Real > const &f, Array4< Real const > const &res, Array4< Real const > const &rhs, Array4< Real const > const &phi, Array4< Real const > const &sig, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_Ax_fine_contrib_cs (int i, int j, int k, Box const &ndbx, Box const &ccbx, Array4< Real > const &f, Array4< Real const > const &res, Array4< Real const > const &rhs, Array4< Real const > const &phi, Real const sig, Array4< int const > const &msk, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_res_cf_contrib (int i, int j, int k, Array4< Real > const &res, Array4< Real const > const &phi, Array4< Real const > const &rhs, Array4< Real const > const &sig, Array4< int const > const &dmsk, Array4< int const > const &ndmsk, Array4< int const > const &ccmsk, Array4< Real const > const &fc, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Box const &ccdom_p, Box const &nddom, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bclo, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bchi, bool neumann_doubling) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_res_cf_contrib_cs (int i, int j, int k, Array4< Real > const &res, Array4< Real const > const &phi, Array4< Real const > const &rhs, Real const sig, Array4< int const > const &dmsk, Array4< int const > const &ndmsk, Array4< int const > const &ccmsk, Array4< Real const > const &fc, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Box const &ccdom_p, Box const &nddom, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bclo, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &bchi, bool neumann_doubling) noexcept
 
void mlndlap_impose_neumann_bc (Box const &bx, Array4< Real > const &rhs, Box const &nddom, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &lobc, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &hibc) noexcept
 
void mlndlap_unimpose_neumann_bc (Box const &bx, Array4< Real > const &rhs, Box const &nddom, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &lobc, GpuArray< LinOpBCType, AMREX_SPACEDIM > const &hibc) noexcept
 
template<typename T >
void mlndlap_fillbc_cc (Box const &vbx, Array4< T > const &sigma, Box const &domain, GpuArray< LinOpBCType, AMREX_SPACEDIM > bclo, GpuArray< LinOpBCType, AMREX_SPACEDIM > bchi) noexcept
 
template<typename T >
void mlndlap_applybc (Box const &vbx, Array4< T > const &phi, Box const &domain, GpuArray< LinOpBCType, AMREX_SPACEDIM > bclo, GpuArray< LinOpBCType, AMREX_SPACEDIM > bchi) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_normalize_sten (int i, int j, int k, Array4< Real > const &x, Array4< Real const > const &sten, Array4< int const > const &msk, Real s0_norm0) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_jacobi_sten (int i, int j, int k, Array4< Real > const &sol, Real Ax, Array4< Real const > const &rhs, Array4< Real const > const &sten, Array4< int const > const &msk) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndlap_jacobi_sten (Box const &bx, Array4< Real > const &sol, Array4< Real const > const &Ax, Array4< Real const > const &rhs, Array4< Real const > const &sten, Array4< int const > const &msk) noexcept
 
AMREX_FORCE_INLINE bool mlndlap_any_fine_sync_cells (Box const &bx, Array4< int const > const &msk, int fine_flag) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndtslap_interpadd (int, int, int, Array4< Real > const &, Array4< Real const > const &, Array4< int const > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndtslap_adotx (Box const &, Array4< Real > const &, Array4< Real const > const &, GpuArray< Real, 6 > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndtslap_gauss_seidel (Box const &, Array4< Real > const &, Array4< Real const > const &, Array4< int const > const &, GpuArray< Real, 6 > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndtslap_normalize (Box const &, Array4< Real > const &, Array4< int const > const &, GpuArray< Real, 6 > const &, GpuArray< Real, AMREX_SPACEDIM > const &) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndtslap_adotx (Box const &b, Array4< Real > const &y, Array4< Real const > const &x, GpuArray< Real, 3 > const &s, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndtslap_gauss_seidel (Box const &b, Array4< Real > const &sol, Array4< Real const > const &rhs, Array4< int const > const &msk, GpuArray< Real, 3 > const &s, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlndtslap_normalize (Box const &b, Array4< Real > const &phi, Array4< int const > const &msk, GpuArray< Real, 3 > const &s, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_adotx (int i, Array4< Real > const &y, Array4< Real const > const &x, Real dhx) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_adotx_os (int i, Array4< Real > const &y, Array4< Real const > const &x, Array4< int const > const &osm, Real dhx) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_adotx_m (int i, Array4< Real > const &y, Array4< Real const > const &x, Real dhx, Real dx, Real probxlo) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_flux_x (Box const &box, Array4< Real > const &fx, Array4< Real const > const &sol, Real dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_flux_x_m (Box const &box, Array4< Real > const &fx, Array4< Real const > const &sol, Real dxinv, Real dx, Real probxlo) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_flux_xface (Box const &box, Array4< Real > const &fx, Array4< Real const > const &sol, Real dxinv, int xlen) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_flux_xface_m (Box const &box, Array4< Real > const &fx, Array4< Real const > const &sol, Real dxinv, int xlen, Real dx, Real probxlo) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_gsrb (Box const &box, Array4< Real > const &phi, Array4< Real const > const &rhs, Real dhx, Array4< Real const > const &f0, Array4< int const > const &m0, Array4< Real const > const &f1, Array4< int const > const &m1, Box const &vbox, int redblack) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_gsrb_os (Box const &box, Array4< Real > const &phi, Array4< Real const > const &rhs, Array4< int const > const &osm, Real dhx, Array4< Real const > const &f0, Array4< int const > const &m0, Array4< Real const > const &f1, Array4< int const > const &m1, Box const &vbox, int redblack) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_gsrb_m (Box const &box, Array4< Real > const &phi, Array4< Real const > const &rhs, Real dhx, Array4< Real const > const &f0, Array4< int const > const &m0, Array4< Real const > const &f1, Array4< int const > const &m1, Box const &vbox, int redblack, Real dx, Real probxlo) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_normalize (int i, int, int, Array4< Real > const &x, Real dhx, Real dx, Real probxlo) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_adotx (int i, int j, int k, Array4< Real > const &y, Array4< Real const > const &x, Real dhx, Real dhy, Real dhz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_adotx_os (int i, int j, int k, Array4< Real > const &y, Array4< Real const > const &x, Array4< int const > const &osm, Real dhx, Real dhy, Real dhz) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_flux_y (Box const &box, Array4< Real > const &fy, Array4< Real const > const &sol, Real dyinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_flux_yface (Box const &box, Array4< Real > const &fy, Array4< Real const > const &sol, Real dyinv, int ylen) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_flux_z (Box const &box, Array4< Real > const &fz, Array4< Real const > const &sol, Real dzinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_flux_zface (Box const &box, Array4< Real > const &fz, Array4< Real const > const &sol, Real dzinv, int zlen) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_gsrb (Box const &box, Array4< Real > const &phi, Array4< Real const > const &rhs, Real dhx, Real dhy, Real dhz, Array4< Real const > const &f0, Array4< int const > const &m0, Array4< Real const > const &f1, Array4< int const > const &m1, Array4< Real const > const &f2, Array4< int const > const &m2, Array4< Real const > const &f3, Array4< int const > const &m3, Array4< Real const > const &f4, Array4< int const > const &m4, Array4< Real const > const &f5, Array4< int const > const &m5, Box const &vbox, int redblack) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mlpoisson_gsrb_os (Box const &box, Array4< Real > const &phi, Array4< Real const > const &rhs, Array4< int const > const &osm, Real dhx, Real dhy, Real dhz, Array4< Real const > const &f0, Array4< int const > const &m0, Array4< Real const > const &f1, Array4< int const > const &m1, Array4< Real const > const &f2, Array4< int const > const &m2, Array4< Real const > const &f3, Array4< int const > const &m3, Array4< Real const > const &f4, Array4< int const > const &m4, Array4< Real const > const &f5, Array4< int const > const &m5, Box const &vbox, int redblack) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mltensor_fill_corners (int icorner, Box const &vbox, Array4< Real > const &vel, Array4< int const > const &mxlo, Array4< int const > const &mylo, Array4< int const > const &mxhi, Array4< int const > const &myhi, Array4< Real const > const &bcvalxlo, Array4< Real const > const &bcvalylo, Array4< Real const > const &bcvalxhi, Array4< Real const > const &bcvalyhi, GpuArray< BoundCond, 2 *AMREX_SPACEDIM *AMREX_SPACEDIM > const &bct, GpuArray< Real, 2 *AMREX_SPACEDIM *AMREX_SPACEDIM > const &bcl, int inhomog, int maxorder, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Box const &domain) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mltensor_cross_terms_fx (Box const &box, Array4< Real > const &fx, Array4< Real const > const &vel, Array4< Real const > const &etax, Array4< Real const > const &kapx, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mltensor_cross_terms_fy (Box const &box, Array4< Real > const &fy, Array4< Real const > const &vel, Array4< Real const > const &etay, Array4< Real const > const &kapy, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mltensor_cross_terms (Box const &box, Array4< Real > const &Ax, Array4< Real const > const &fx, Array4< Real const > const &fy, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real bscalar) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mltensor_cross_terms_os (Box const &box, Array4< Real > const &Ax, Array4< Real const > const &fx, Array4< Real const > const &fy, Array4< int const > const &osm, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real bscalar) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mltensor_vel_grads_fx (Box const &box, Array4< Real > const &fx, Array4< Real const > const &vel, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mltensor_vel_grads_fy (Box const &box, Array4< Real > const &fy, Array4< Real const > const &vel, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mltensor_fill_corners (int icorner, Box const &vbox, Array4< Real > const &vel, Array4< int const > const &mxlo, Array4< int const > const &mylo, Array4< int const > const &mzlo, Array4< int const > const &mxhi, Array4< int const > const &myhi, Array4< int const > const &mzhi, Array4< Real const > const &bcvalxlo, Array4< Real const > const &bcvalylo, Array4< Real const > const &bcvalzlo, Array4< Real const > const &bcvalxhi, Array4< Real const > const &bcvalyhi, Array4< Real const > const &bcvalzhi, GpuArray< BoundCond, 2 *AMREX_SPACEDIM *AMREX_SPACEDIM > const &bct, GpuArray< Real, 2 *AMREX_SPACEDIM *AMREX_SPACEDIM > const &bcl, int inhomog, int maxorder, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Box const &domain) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mltensor_fill_edges (int iedge, Box const &vbox, Array4< Real > const &vel, Array4< int const > const &mxlo, Array4< int const > const &mylo, Array4< int const > const &mzlo, Array4< int const > const &mxhi, Array4< int const > const &myhi, Array4< int const > const &mzhi, Array4< Real const > const &bcvalxlo, Array4< Real const > const &bcvalylo, Array4< Real const > const &bcvalzlo, Array4< Real const > const &bcvalxhi, Array4< Real const > const &bcvalyhi, Array4< Real const > const &bcvalzhi, GpuArray< BoundCond, 2 *AMREX_SPACEDIM *AMREX_SPACEDIM > const &bct, GpuArray< Real, 2 *AMREX_SPACEDIM *AMREX_SPACEDIM > const &bcl, int inhomog, int maxorder, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Box const &domain) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mltensor_cross_terms_fz (Box const &box, Array4< Real > const &fz, Array4< Real const > const &vel, Array4< Real const > const &etaz, Array4< Real const > const &kapz, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mltensor_cross_terms (Box const &box, Array4< Real > const &Ax, Array4< Real const > const &fx, Array4< Real const > const &fy, Array4< Real const > const &fz, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real bscalar) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mltensor_cross_terms_os (Box const &box, Array4< Real > const &Ax, Array4< Real const > const &fx, Array4< Real const > const &fy, Array4< Real const > const &fz, Array4< int const > const &osm, GpuArray< Real, AMREX_SPACEDIM > const &dxinv, Real bscalar) noexcept
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mltensor_vel_grads_fz (Box const &box, Array4< Real > const &fz, Array4< Real const > const &vel, GpuArray< Real, AMREX_SPACEDIM > const &dxinv) noexcept
 
template<int NReal, int NInt>
std::ostream & operator<< (std::ostream &os, const Particle< NReal, NInt > &p)
 
template<int NReal>
std::ostream & operator<< (std::ostream &os, const Particle< NReal, 0 > &p)
 
template<int NInt>
std::ostream & operator<< (std::ostream &os, const Particle< 0, NInt > &p)
 
template<int NReal = 0, int NInt = 0>
std::ostream & operator<< (std::ostream &os, const Particle< 0, 0 > &p)
 
template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_deposit_cic (P const &p, int nc, amrex::Array4< amrex::Real > const &rho, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &plo, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &dxi)
 
template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_deposit_particle_dx_cic (P const &p, int nc, amrex::Array4< amrex::Real > const &rho, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &plo, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &dxi, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &pdxi)
 
template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex_interpolate_cic (P const &p, int nc, amrex::Array4< amrex::Real const > const &acc, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &plo, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &dxi)
 
template<class PC , class Buffer , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void packBuffer (const PC &pc, const ParticleCopyOp &op, const ParticleCopyPlan &plan, Buffer &snd_buffer)
 
template<class PC , class Buffer , class UnpackPolicy , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void unpackBuffer (PC &pc, const ParticleCopyPlan &plan, const Buffer &snd_buffer, const UnpackPolicy &&policy)
 
template<class PC , class Buffer , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void communicateParticlesStart (const PC &pc, ParticleCopyPlan &plan, const Buffer &snd_buffer, Buffer &rcv_buffer)
 
void communicateParticlesFinish (const ParticleCopyPlan &plan)
 
template<class PC , class Buffer , class UnpackPolicy , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void unpackRemotes (PC &pc, const ParticleCopyPlan &plan, Buffer &rcv_buffer, UnpackPolicy &&policy)
 
template<class PC , class MF , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void ParticleToMesh (PC const &pc, MF &mf, int lev, F &&f, bool zero_out_input=true)
 
template<class PC , class MF , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void MeshToParticle (PC &pc, MF const &mf, int lev, F &&f)
 
Long CountSnds (const std::map< int, Vector< char > > &not_ours, Vector< Long > &Snds)
 
Long doHandShake (const std::map< int, Vector< char > > &not_ours, Vector< Long > &Snds, Vector< Long > &Rcvs)
 
Long doHandShakeLocal (const std::map< int, Vector< char > > &not_ours, const Vector< int > &neighbor_procs, Vector< Long > &Snds, Vector< Long > &Rcvs)
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto ReduceSum (PC const &pc, F &&f) -> decltype(f(typename PC::SuperParticleType()))
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates over all particles on all levels. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto ReduceSum (PC const &pc, int lev, F &&f) -> decltype(f(typename PC::SuperParticleType()))
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates only on the specified level. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto ReduceSum (PC const &pc, int lev_min, int lev_max, F &&f) -> decltype(f(typename PC::SuperParticleType()))
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates from the specified lev_min to lev_max. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto ReduceMax (PC const &pc, F &&f) -> decltype(f(typename PC::SuperParticleType()))
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates over all particles on all levels. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto ReduceMax (PC const &pc, int lev, F &&f) -> decltype(f(typename PC::SuperParticleType()))
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates only on the specified level. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto ReduceMax (PC const &pc, int lev_min, int lev_max, F &&f) -> decltype(f(typename PC::SuperParticleType()))
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates from the specified lev_min to lev_max. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto ReduceMin (PC const &pc, F &&f) -> decltype(f(typename PC::SuperParticleType()))
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates over all particles on all levels. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto ReduceMin (PC const &pc, int lev, F &&f) -> decltype(f(typename PC::SuperParticleType()))
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates only on the specified level. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto ReduceMin (PC const &pc, int lev_min, int lev_max, F &&f) -> decltype(f(typename PC::SuperParticleType()))
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates from the specified lev_min to lev_max. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
bool ReduceLogicalAnd (PC const &pc, F &&f)
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates over all particles on all levels. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
bool ReduceLogicalAnd (PC const &pc, int lev, F &&f)
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates only on the specified level. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
bool ReduceLogicalAnd (PC const &pc, int lev_min, int lev_max, F &&f)
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates from the specified lev_min to lev_max. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
bool ReduceLogicalOr (PC const &pc, F &&f)
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates over all particles on all levels. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
bool ReduceLogicalOr (PC const &pc, int lev, F &&f)
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates only on the specified level. More...
 
template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
bool ReduceLogicalOr (PC const &pc, int lev_min, int lev_max, F &&f)
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates from the specified lev_min to lev_max. More...
 
template<class RD , class PC , class F , class ReduceOps , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
RD::Type ParticleReduce (PC const &pc, F &&f, ReduceOps &reduce_ops)
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates over all particles on all levels. More...
 
template<class RD , class PC , class F , class ReduceOps , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
RD::Type ParticleReduce (PC const &pc, int lev, F &&f, ReduceOps &reduce_ops)
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates only on the specified level. More...
 
template<class RD , class PC , class F , class ReduceOps , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
RD::Type ParticleReduce (PC const &pc, int lev_min, int lev_max, F &&f, ReduceOps &reduce_ops)
 A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates from the specified lev_min to lev_max. More...
 
template<int NSR, int NSI, int NAR, int NAI>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void copyParticle (const ParticleTileData< NSR, NSI, NAR, NAI > &dst, const ConstParticleTileData< NSR, NSI, NAR, NAI > &src, int src_i, int dst_i) noexcept
 A general single particle copying routine that can run on the GPU. More...
 
template<int NSR, int NSI, int NAR, int NAI>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void copyParticle (const ParticleTileData< NSR, NSI, NAR, NAI > &dst, const ParticleTileData< NSR, NSI, NAR, NAI > &src, int src_i, int dst_i) noexcept
 A general single particle copying routine that can run on the GPU. More...
 
template<int NSR, int NSI, int NAR, int NAI>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void swapParticle (const ParticleTileData< NSR, NSI, NAR, NAI > &dst, const ParticleTileData< NSR, NSI, NAR, NAI > &src, int src_i, int dst_i) noexcept
 A general single particle swapping routine that can run on the GPU. More...
 
template<typename DstTile , typename SrcTile >
void copyParticles (DstTile &dst, const SrcTile &src) noexcept
 Copy particles from src to dst. This version copies all the particles, writing them to the beginning of dst. More...
 
template<typename DstTile , typename SrcTile , typename Index , typename N , std::enable_if_t< std::is_integral< Index >::value, int > foo = 0>
void copyParticles (DstTile &dst, const SrcTile &src, Index src_start, Index dst_start, N n) noexcept
 Copy particles from src to dst. This version copies n particles starting at index src_start, writing the result starting at dst_start. More...
 
template<typename DstTile , typename SrcTile , typename F >
void transformParticles (DstTile &dst, const SrcTile &src, F &&f) noexcept
 Apply the function f to all the particles in src, writing the result to dst. This version does all the particles in src. More...
 
template<typename DstTile , typename SrcTile , typename Index , typename N , typename F , std::enable_if_t< std::is_integral< Index >::value, int > foo = 0>
void transformParticles (DstTile &dst, const SrcTile &src, Index src_start, Index dst_start, N n, F &&f) noexcept
 Apply the function f to particles in src, writing the result to dst. This version applies the function to n particles starting at index src_start, writing the result starting at dst_start. More...
 
template<typename DstTile1 , typename DstTile2 , typename SrcTile , typename F >
void transformParticles (DstTile1 &dst1, DstTile2 &dst2, const SrcTile &src, F &&f) noexcept
 Apply the function f to all the particles in src, writing the results to dst1 and dst2. This version does all the particles in src. More...
 
template<typename DstTile1 , typename DstTile2 , typename SrcTile , typename Index , typename N , typename F , std::enable_if_t< std::is_integral< Index >::value, int > foo = 0>
void transformParticles (DstTile1 &dst1, DstTile2 &dst2, const SrcTile &src, Index src_start, Index dst1_start, Index dst2_start, N n, F &&f) noexcept
 Apply the function f to particles in src, writing the results to dst1 and dst2. This version applies the function to n particles starting at index src_start, writing the result starting at dst1_start and dst2_start. More...
 
template<typename DstTile , typename SrcTile , typename Index , typename N , std::enable_if_t< std::is_integral< Index >::value, int > foo = 0>
Index filterParticles (DstTile &dst, const SrcTile &src, const Index *mask) noexcept
 Conditionally copy particles from src to dst based on the value of mask. More...
 
template<typename DstTile , typename SrcTile , typename Index , typename N , std::enable_if_t< std::is_integral< Index >::value, int > foo = 0>
Index filterParticles (DstTile &dst, const SrcTile &src, const Index *mask, Index src_start, Index dst_start, N n) noexcept
 Conditionally copy particles from src to dst based on the value of mask. This version conditionally copies n particles starting at index src_start, writing the result starting at dst_start. More...
 
template<typename DstTile , typename SrcTile , typename Pred >
int filterParticles (DstTile &dst, const SrcTile &src, Pred &&p) noexcept
 Conditionally copy particles from src to dst based on a predicate. More...
 
template<typename DstTile , typename SrcTile , typename Pred , typename Index , typename N >
auto filterParticles (DstTile &dst, const SrcTile &src, Pred &&p, Index src_start, Index dst_start, N n) noexcept -> decltype(Index(particle_detail::call_f(p, typename SrcTile::ConstParticleTileDataType(), int
 Conditionally copy particles from src to dst based on a predicate. This version conditionally copies n particles starting at index src_start, writing the result starting at dst_start. More...
 
IntVect computeRefFac (const ParGDBBase *a_gdb, int src_lev, int lev)
 
Vector< intcomputeNeighborProcs (const ParGDBBase *a_gdb, int ngrow)
 
template<class Iterator , std::enable_if_t< IsParticleIterator< Iterator >::value, int > foo = 0>
int numParticlesOutOfRange (Iterator const &pti, int nGrow)
 Returns the number of particles that are more than nGrow cells from the box correspond to the input iterator. More...
 
template<class Iterator , std::enable_if_t< IsParticleIterator< Iterator >::value, int > foo = 0>
int numParticlesOutOfRange (Iterator const &pti, IntVect nGrow)
 Returns the number of particles that are more than nGrow cells from the box correspond to the input iterator. More...
 
template<class PC , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
int numParticlesOutOfRange (PC const &pc, int nGrow)
 Returns the number of particles that are more than nGrow cells from their assigned box. More...
 
template<class PC , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
int numParticlesOutOfRange (PC const &pc, IntVect nGrow)
 Returns the number of particles that are more than nGrow cells from their assigned box. More...
 
template<class PC , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
int numParticlesOutOfRange (PC const &pc, int lev_min, int lev_max, int nGrow)
 Returns the number of particles that are more than nGrow cells from their assigned box. More...
 
template<class PC , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
int numParticlesOutOfRange (PC const &pc, int lev_min, int lev_max, IntVect nGrow)
 Returns the number of particles that are more than nGrow cells from their assigned box. More...
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int getTileIndex (const IntVect &iv, const Box &box, const bool a_do_tiling, const IntVect &a_tile_size, Box &tbx)
 
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int numTilesInBox (const Box &box, const bool a_do_tiling, const IntVect &a_tile_size)
 
template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect getParticleCell (P const &p, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &plo, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &dxi, const Box &domain) noexcept
 
template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int getParticleGrid (P const &p, amrex::Array4< int > const &mask, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &plo, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &dxi, const Box &domain) noexcept
 
template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE bool enforcePeriodic (P &p, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &plo, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &phi, amrex::GpuArray< int, AMREX_SPACEDIM > const &is_per) noexcept
 
template<typename PTile , typename PLocator >
int partitionParticlesByDest (PTile &ptile, const PLocator &ploc, const ParticleBufferMap &pmap, const Geometry &geom, int lev, int gid, int, int lev_min, int lev_max, int nGrow)
 
template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void cic_interpolate (const P &p, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &plo, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &dxi, const amrex::Array4< amrex::Real const > &uccarr, amrex::ParticleReal *val, int M)
 
template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void cic_interpolate (const P &p, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &plo, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &dxi, const amrex::Array4< amrex::Real const > &uccarr, amrex::ParticleReal *val)
 
template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void mac_interpolate (const P &p, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &plo, amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &dxi, amrex::GpuArray< amrex::Array4< amrex::Real const >, AMREX_SPACEDIM > const &p_uccarr, amrex::ParticleReal *val)
 

Variables

static constexpr Real INVALID_TIME = -1.0e200_rt
 
static constexpr int MFNEWDATA = 0
 
static constexpr int MFOLDDATA = 1
 
static const char * err_name [] = { "Special", "Standard", "UseAverage" }
 
PCInterp pc_interp
 CONSTRUCT A GLOBAL OBJECT OF EACH VERSION. More...
 
NodeBilinear node_bilinear_interp
 
FaceLinear face_linear_interp
 
FaceDivFree face_divfree_interp
 
CellConservativeLinear lincc_interp
 
CellConservativeLinear cell_cons_interp (0)
 
CellBilinear cell_bilinear_interp
 
CellQuadratic quadratic_interp
 
CellConservativeProtected protected_interp
 
CellConservativeQuartic quartic_interp
 
MFPCInterp mf_pc_interp
 
MFCellConsLinInterp mf_cell_cons_interp (false)
 
MFCellConsLinInterp mf_lincc_interp (true)
 
MFCellBilinear mf_cell_bilinear_interp
 
MFNodeBilinear mf_node_bilinear_interp
 
std::atomic< Long > atomic_total_bytes_allocated_in_fabs {0L}
 
std::atomic< Long > atomic_total_bytes_allocated_in_fabs_hwm {0L}
 
std::atomic< Long > atomic_total_cells_allocated_in_fabs {0L}
 
std::atomic< Long > atomic_total_cells_allocated_in_fabs_hwm {0L}
 
Long private_total_bytes_allocated_in_fabs = 0L
 total bytes at any given time More...
 
Long private_total_bytes_allocated_in_fabs_hwm = 0L
 high-water-mark over a given interval More...
 
Long private_total_cells_allocated_in_fabs = 0L
 total cells at any given time More...
 
Long private_total_cells_allocated_in_fabs_hwm = 0L
 high-water-mark over a given interval More...
 
const int []
 
bool initialized = false
 
int verbose
 
int sfc_threshold
 
Real max_efficiency
 
int node_size
 
const int BitsMax = 8*sizeof(Long)
 
const int REVERSE_ORDER = 2
 
static const char sys_name [] = "IEEE"
 
constexpr gpuError_t gpuSuccess = cudaSuccess
 
static bool finalize_verbose = true
 
static std::string s_pout_filename
 
static std::string s_pout_basename
 
static std::ofstream s_pout
 
static bool s_pout_init = false
 
static bool s_pout_open = false
 
amrex::randState_tgpu_rand_state = nullptr
 
static const Long gcc_map_node_extra_bytes = 32L
 
static const char * TheMultiFabHdrFileSuffix = "_H"
 
static const char * FabFileSuffix = "_D_"
 
static const char * TheFabOnDiskPrefix = "FabOnDisk:"
 
static struct iparser_nodeiparser_root = nullptr
 
static struct parser_nodeparser_root = nullptr
 
EBCellConservativeLinear eb_lincc_interp
 
EBCellConservativeLinear eb_cell_cons_interp (0)
 
EBMFCellConsLinInterp eb_mf_cell_cons_interp (false)
 
EBMFCellConsLinInterp eb_mf_lincc_interp (true)
 

Detailed Description

Current Support:

  • 2D + 3D
  • single + multi-level (w/o nesting)
  • ghosts (indicator field created using grow)
  • particles

TODO:

  • AMR nesting

Typedef Documentation

◆ Array

template<class T , std::size_t N>
using amrex::Array = typedef std::array<T,N>

◆ BndryBATransformer

◆ BndryFunc3DDefault

typedef void(* amrex::BndryFunc3DDefault) (Real *data, const int *lo, const int *hi, const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)

◆ BndryFuncDefault

typedef void(* amrex::BndryFuncDefault) (Real *data, AMREX_ARLIM_P(lo), AMREX_ARLIM_P(hi), const int *dom_lo, const int *dom_hi, const Real *dx, const Real *grd_lo, const Real *time, const int *bc)

◆ BndryFuncFabDefault

typedef void(* amrex::BndryFuncFabDefault) (Box const &bx, FArrayBox &data, const int dcomp, const int numcomp, Geometry const &geom, const Real time, const Vector< BCRec > &bcr, const int bcomp, const int scomp)

◆ DefaultAllocator

template<class T >
using amrex::DefaultAllocator = typedef amrex::ArenaAllocator<T>

◆ DeriveFunc

typedef void(* amrex::DeriveFunc) (amrex::Real *data, AMREX_ARLIM_P(dlo), AMREX_ARLIM_P(dhi), const int *nvar, const amrex::Real *compdat, AMREX_ARLIM_P(compdat_lo), AMREX_ARLIM_P(compdat_hi), const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)

Type of extern "C" function called by DeriveRec to compute derived quantity.

Note that AMREX_ARLIM_P will be preprocessed into DIM const int&'s.

Parameters
data
AMREX_ARLIM_P(dlo)
AMREX_ARLIM_P(dhi)
nvar
compdat
AMREX_ARLIM_P(compdat_lo)
AMREX_ARLIM_P(compdat_hi)
ncomp
lo
hi
domain_lo
domain_hi
delta
xlo
time
dt
bcrec
level
grid_no

◆ DeriveFunc3D

typedef void(* amrex::DeriveFunc3D) (amrex::Real *data, const int *dlo, const int *dhi, const int *nvar, const amrex::Real *compdat, const int *clo, const int *chi, const int *ncomp, const int *lo, const int *hi, const int *domain_lo, const int *domain_hi, const amrex::Real *delta, const amrex::Real *xlo, const amrex::Real *time, const amrex::Real *dt, const int *bcrec, const int *level, const int *grid_no)

This is dimension agnostic. For example, dlo always has three elements.

Parameters
data
dlo
dhi
nvar
compdat
clo
chi
ncomp
lo
hi
domain_lo
domain_hi
delta
xlo
time
dt
bcrec
level
grid_no

◆ DeriveFuncFab

typedef void(* amrex::DeriveFuncFab) (const amrex::Box &bx, amrex::FArrayBox &derfab, int dcomp, int ncomp, const amrex::FArrayBox &datafab, const amrex::Geometry &geomdata, amrex::Real time, const int *bcrec, int level)

◆ Detected_t

template<template< class... > class Op, class... Args>
using amrex::Detected_t = typedef typename detail::Detector<detail::Nonesuch, void, Op, Args...>::type

◆ DetectedOr

template<class Default , template< class... > class Op, class... Args>
using amrex::DetectedOr = typedef typename detail::Detector<Default, void, Op, Args...>::type

◆ EnableIf_t

template<bool B, class T = void>
using amrex::EnableIf_t = typedef typename std::enable_if<B,T>::type

◆ ErrorFunc2Default

typedef void(* amrex::ErrorFunc2Default) (int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const int *level, const amrex::Real *avg)

◆ ErrorFunc3DDefault

typedef void(* amrex::ErrorFunc3DDefault) (int *tag, const int *tlo, const int *thi, const int *tagval, const int *clearval, amrex::Real *data, const int *data_lo, const int *data_hi, const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)

Dimension agnostic version that always has three elements. Note that this is only implemented for the ErrorFunc class, not ErrorFunc2.

Parameters
tag
tlo
thi
tagval
clearval
data
data_lo
data_hi
lo
hi
nvar
domain_lo
domain_hi
dx
xlo
prob_lo
time
level

◆ ErrorFuncDefault

typedef void(* amrex::ErrorFuncDefault) (int *tag, AMREX_ARLIM_P(tlo), AMREX_ARLIM_P(thi), const int *tagval, const int *clearval, amrex::Real *data, AMREX_ARLIM_P(data_lo), AMREX_ARLIM_P(data_hi), const int *lo, const int *hi, const int *nvar, const int *domain_lo, const int *domain_hi, const amrex::Real *dx, const amrex::Real *xlo, const amrex::Real *prob_lo, const amrex::Real *time, const int *level)

Type of extern "C" function called by ErrorRec to do tagging of cells for refinement.

Parameters
tag
tlo
thi
tagval
clearval
data
data_lo
data_hi
lo
hi
nvar
domain_lo
domain_hi
dx
xlo
prob_lo
time
level

◆ ErrorHandler

typedef void(* amrex::ErrorHandler) (const char *msg)

◆ FArrayBoxFactory

◆ gpuDeviceProp_t

using amrex::gpuDeviceProp_t = typedef cudaDeviceProp

◆ gpuError_t

using amrex::gpuError_t = typedef cudaError_t

◆ gpuStream_t

using amrex::gpuStream_t = typedef cudaStream_t

◆ IntArray

using amrex::IntArray = typedef Array<int , AMREX_SPACEDIM>

◆ IsDetected

template<template< class... > class Op, class... Args>
using amrex::IsDetected = typedef typename detail::Detector<detail::Nonesuch, void, Op, Args...>::value_t

◆ IsDetectedExact

template<class Expected , template< typename... > class Op, class... Args>
using amrex::IsDetectedExact = typedef std::is_same<Expected, Detected_t<Op, Args...> >

◆ key_table_type

◆ MaxResSteadyClock

using amrex::MaxResSteadyClock = typedef std::conditional<std::chrono::high_resolution_clock::is_steady, std::chrono::high_resolution_clock, std::chrono::steady_clock>::type

◆ MultiFabId

◆ Negation

template<class B >
using amrex::Negation = typedef std::integral_constant<bool, !bool(B::value)>

◆ PTR_TO_VOID_FUNC

typedef void(* amrex::PTR_TO_VOID_FUNC) (void)

◆ randState_t

using amrex::randState_t = typedef curandState_t

◆ RealArray

using amrex::RealArray = typedef Array<Real, AMREX_SPACEDIM>

◆ RuntimeError

using amrex::RuntimeError = typedef std::runtime_error

◆ TheFaArenaPointer

using amrex::TheFaArenaPointer = typedef std::unique_ptr<char, TheFaArenaDeleter>

◆ TracerParIter

using amrex::TracerParIter = typedef ParIter<AMREX_SPACEDIM>

◆ Tuple

template<class... Ts>
using amrex::Tuple = typedef std::tuple<Ts...>

◆ UserFillBox

typedef void(* amrex::UserFillBox) (Box const &bx, Array4< Real > const &dest, const int dcomp, const int numcomp, GeometryData const &geom, const Real time, const BCRec *bcr, const int bcomp, const int orig_comp)

Enumeration Type Documentation

◆ BottomSolver

enum amrex::BottomSolver : int
strong
Enumerator
Default 
smoother 
bicgstab 
cg 
bicgcg 
cgbicg 
hypre 
petsc 

◆ DataLayout

enum amrex::DataLayout
strong

A tag that defines the data layout policy used by particle tiles.

Enumerator
AoS 
SoA 

◆ Direction

enum amrex::Direction : int
strong
Enumerator
AMREX_D_DECL 

◆ EBSupport

enum amrex::EBSupport : int
strong
Enumerator
none 
basic 

EBCellFlag.

volume 
  • volume fraction
full 
  • area fraction, boundary centroids and face centroids

◆ FabType

enum amrex::FabType : int
strong
Enumerator
covered 
regular 
singlevalued 
multivalued 
undefined 

◆ FillType

This enum and the FabCopyDescriptor class should really be nested in FabArrayCopyDescriptor (not done for portability reasons).

Enumerator
FillLocally 
FillRemotely 
Unfillable 

◆ InterpEM_t

Enumerator
InterpE 
InterpB 

◆ iparser_exe_t

Enumerator
IPARSER_EXE_NULL 
IPARSER_EXE_NUMBER 
IPARSER_EXE_SYMBOL 
IPARSER_EXE_ADD 
IPARSER_EXE_SUB 
IPARSER_EXE_MUL 
IPARSER_EXE_DIV_F 
IPARSER_EXE_DIV_B 
IPARSER_EXE_NEG 
IPARSER_EXE_F1 
IPARSER_EXE_F2_F 
IPARSER_EXE_F2_B 
IPARSER_EXE_ADD_VP 
IPARSER_EXE_SUB_VP 
IPARSER_EXE_MUL_VP 
IPARSER_EXE_DIV_VP 
IPARSER_EXE_DIV_PV 
IPARSER_EXE_ADD_PP 
IPARSER_EXE_SUB_PP 
IPARSER_EXE_MUL_PP 
IPARSER_EXE_DIV_PP 
IPARSER_EXE_NEG_P 
IPARSER_EXE_ADD_VN 
IPARSER_EXE_SUB_VN 
IPARSER_EXE_MUL_VN 
IPARSER_EXE_DIV_NV 
IPARSER_EXE_DIV_VN 
IPARSER_EXE_ADD_PN 
IPARSER_EXE_SUB_PN 
IPARSER_EXE_MUL_PN 
IPARSER_EXE_DIV_PN 
IPARSER_EXE_IF 
IPARSER_EXE_JUMP 

◆ iparser_f1_t

Enumerator
IPARSER_ABS 

◆ iparser_f2_t

Enumerator
IPARSER_FLRDIV 
IPARSER_POW 
IPARSER_GT 
IPARSER_LT 
IPARSER_GEQ 
IPARSER_LEQ 
IPARSER_EQ 
IPARSER_NEQ 
IPARSER_AND 
IPARSER_OR 
IPARSER_MIN 
IPARSER_MAX 

◆ iparser_f3_t

Enumerator
IPARSER_IF 

◆ iparser_node_t

Enumerator
IPARSER_NUMBER 
IPARSER_SYMBOL 
IPARSER_ADD 
IPARSER_SUB 
IPARSER_MUL 
IPARSER_DIV 
IPARSER_NEG 
IPARSER_F1 
IPARSER_F2 
IPARSER_F3 
IPARSER_ASSIGN 
IPARSER_LIST 
IPARSER_ADD_VP 
IPARSER_ADD_PP 
IPARSER_SUB_VP 
IPARSER_SUB_PP 
IPARSER_MUL_VP 
IPARSER_MUL_PP 
IPARSER_DIV_VP 
IPARSER_DIV_PV 
IPARSER_DIV_PP 
IPARSER_NEG_P 

◆ MakeType

Enumerator
make_alias 
make_deep_copy 

◆ parser_exe_t

Enumerator
PARSER_EXE_NULL 
PARSER_EXE_NUMBER 
PARSER_EXE_SYMBOL 
PARSER_EXE_ADD 
PARSER_EXE_SUB 
PARSER_EXE_MUL 
PARSER_EXE_DIV_F 
PARSER_EXE_DIV_B 
PARSER_EXE_NEG 
PARSER_EXE_F1 
PARSER_EXE_F2_F 
PARSER_EXE_F2_B 
PARSER_EXE_ADD_VP 
PARSER_EXE_SUB_VP 
PARSER_EXE_MUL_VP 
PARSER_EXE_DIV_VP 
PARSER_EXE_ADD_PP 
PARSER_EXE_SUB_PP 
PARSER_EXE_MUL_PP 
PARSER_EXE_DIV_PP 
PARSER_EXE_NEG_P 
PARSER_EXE_ADD_VN 
PARSER_EXE_SUB_VN 
PARSER_EXE_MUL_VN 
PARSER_EXE_DIV_VN 
PARSER_EXE_ADD_PN 
PARSER_EXE_SUB_PN 
PARSER_EXE_MUL_PN 
PARSER_EXE_DIV_PN 
PARSER_EXE_IF 
PARSER_EXE_JUMP 

◆ parser_f1_t

Enumerator
PARSER_SQRT 
PARSER_EXP 
PARSER_LOG 
PARSER_LOG10 
PARSER_SIN 
PARSER_COS 
PARSER_TAN 
PARSER_ASIN 
PARSER_ACOS 
PARSER_ATAN 
PARSER_SINH 
PARSER_COSH 
PARSER_TANH 
PARSER_ABS 
PARSER_POW_M3 
PARSER_POW_M2 
PARSER_POW_M1 
PARSER_POW_P1 
PARSER_POW_P2 
PARSER_POW_P3 

◆ parser_f2_t

Enumerator
PARSER_POW 
PARSER_GT 
PARSER_LT 
PARSER_GEQ 
PARSER_LEQ 
PARSER_EQ 
PARSER_NEQ 
PARSER_AND 
PARSER_OR 
PARSER_HEAVISIDE 
PARSER_JN 
PARSER_MIN 
PARSER_MAX 

◆ parser_f3_t

Enumerator
PARSER_IF 

◆ parser_node_t

Enumerator
PARSER_NUMBER 
PARSER_SYMBOL 
PARSER_ADD 
PARSER_SUB 
PARSER_MUL 
PARSER_DIV 
PARSER_NEG 
PARSER_F1 
PARSER_F2 
PARSER_F3 
PARSER_ASSIGN 
PARSER_LIST 
PARSER_ADD_VP 
PARSER_ADD_PP 
PARSER_SUB_VP 
PARSER_SUB_PP 
PARSER_MUL_VP 
PARSER_MUL_PP 
PARSER_DIV_VP 
PARSER_DIV_PP 
PARSER_NEG_P 

◆ RunOn

enum amrex::RunOn
strong
Enumerator
Gpu 
Cpu 
Device 
Host 

Function Documentation

◆ __launch_bounds__()

template<int amrex_launch_bounds_max_threads, class L >
amrex::__launch_bounds__ ( amrex_launch_bounds_max_threads  )

◆ _pd_btrvout()

static void amrex::_pd_btrvout ( char *  out,
Long  nb,
Long  nitems 
)
static

◆ _pd_extract_field()

static Long amrex::_pd_extract_field ( char const *  in,
int  offs,
int  nbi,
int  nby,
const int ord 
)
static

◆ _pd_get_bit()

int amrex::_pd_get_bit ( char const *  base,
int  offs,
int  nby,
const int ord 
)
inline

◆ _pd_insert_field()

void amrex::_pd_insert_field ( Long  in_long,
int  nb,
char *  out,
int  offs,
int  l_order,
int  l_bytes 
)
inline

◆ _pd_reorder()

static void amrex::_pd_reorder ( char *  arr,
Long  nitems,
int  nbytes,
const int ord 
)
static

◆ _pd_set_bit()

void amrex::_pd_set_bit ( char *  base,
int  offs 
)
inline

◆ abec_gsrb() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::abec_gsrb ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  alpha,
Array4< Real const > const &  a,
Real  dhx,
Real  dhy,
Real  dhz,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< Real const > const &  bZ,
Array4< int const > const &  m0,
Array4< int const > const &  m2,
Array4< int const > const &  m4,
Array4< int const > const &  m1,
Array4< int const > const &  m3,
Array4< int const > const &  m5,
Array4< Real const > const &  f0,
Array4< Real const > const &  f2,
Array4< Real const > const &  f4,
Array4< Real const > const &  f1,
Array4< Real const > const &  f3,
Array4< Real const > const &  f5,
Box const &  vbox,
int  redblack 
)
noexcept

◆ abec_gsrb() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::abec_gsrb ( int  i,
int  j,
int  ,
int  n,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  alpha,
Array4< Real const > const &  a,
Real  dhx,
Real  dhy,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< int const > const &  m0,
Array4< int const > const &  m2,
Array4< int const > const &  m1,
Array4< int const > const &  m3,
Array4< Real const > const &  f0,
Array4< Real const > const &  f2,
Array4< Real const > const &  f1,
Array4< Real const > const &  f3,
Box const &  vbox,
int  redblack 
)
noexcept

◆ abec_gsrb() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::abec_gsrb ( int  i,
int  ,
int  ,
int  n,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  alpha,
Array4< Real const > const &  a,
Real  dhx,
Array4< Real const > const &  bX,
Array4< int const > const &  m0,
Array4< int const > const &  m1,
Array4< Real const > const &  f0,
Array4< Real const > const &  f1,
Box const &  vbox,
int  redblack 
)
noexcept

◆ abec_gsrb_os() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::abec_gsrb_os ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  alpha,
Array4< Real const > const &  a,
Real  dhx,
Real  dhy,
Real  dhz,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< Real const > const &  bZ,
Array4< int const > const &  m0,
Array4< int const > const &  m2,
Array4< int const > const &  m4,
Array4< int const > const &  m1,
Array4< int const > const &  m3,
Array4< int const > const &  m5,
Array4< Real const > const &  f0,
Array4< Real const > const &  f2,
Array4< Real const > const &  f4,
Array4< Real const > const &  f1,
Array4< Real const > const &  f3,
Array4< Real const > const &  f5,
Array4< int const > const &  osm,
Box const &  vbox,
int  redblack 
)
noexcept

◆ abec_gsrb_os() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::abec_gsrb_os ( int  i,
int  j,
int  ,
int  n,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  alpha,
Array4< Real const > const &  a,
Real  dhx,
Real  dhy,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< int const > const &  m0,
Array4< int const > const &  m2,
Array4< int const > const &  m1,
Array4< int const > const &  m3,
Array4< Real const > const &  f0,
Array4< Real const > const &  f2,
Array4< Real const > const &  f1,
Array4< Real const > const &  f3,
Array4< int const > const &  osm,
Box const &  vbox,
int  redblack 
)
noexcept

◆ abec_gsrb_os() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::abec_gsrb_os ( int  i,
int  ,
int  ,
int  n,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  alpha,
Array4< Real const > const &  a,
Real  dhx,
Array4< Real const > const &  bX,
Array4< int const > const &  m0,
Array4< int const > const &  m1,
Array4< Real const > const &  f0,
Array4< Real const > const &  f1,
Array4< int const > const &  osm,
Box const &  vbox,
int  redblack 
)
noexcept

◆ abec_gsrb_with_line_solve() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::abec_gsrb_with_line_solve ( Box const &  ,
Array4< Real > const &  ,
Array4< Real const > const &  ,
Real  ,
Array4< Real const > const &  ,
Real  ,
Array4< Real const > const &  ,
Array4< int const > const &  ,
Array4< int const > const &  ,
Array4< Real const > const &  ,
Array4< Real const > const &  ,
Box const &  ,
int  ,
int   
)
noexcept

◆ abec_gsrb_with_line_solve() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::abec_gsrb_with_line_solve ( Box const &  box,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  alpha,
Array4< Real const > const &  a,
Real  dhx,
Real  dhy,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< int const > const &  m0,
Array4< int const > const &  m2,
Array4< int const > const &  m1,
Array4< int const > const &  m3,
Array4< Real const > const &  f0,
Array4< Real const > const &  f2,
Array4< Real const > const &  f1,
Array4< Real const > const &  f3,
Box const &  vbox,
int  redblack,
int  nc 
)
noexcept

◆ abec_gsrb_with_line_solve() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::abec_gsrb_with_line_solve ( Box const &  box,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  alpha,
Array4< Real const > const &  a,
Real  dhx,
Real  dhy,
Real  dhz,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< Real const > const &  bZ,
Array4< int const > const &  m0,
Array4< int const > const &  m2,
Array4< int const > const &  m4,
Array4< int const > const &  m1,
Array4< int const > const &  m3,
Array4< int const > const &  m5,
Array4< Real const > const &  f0,
Array4< Real const > const &  f2,
Array4< Real const > const &  f4,
Array4< Real const > const &  f1,
Array4< Real const > const &  f3,
Array4< Real const > const &  f5,
Box const &  vbox,
int  redblack,
int  nc 
)
noexcept

◆ Abort() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::Abort ( const char *  msg = 0)

◆ Abort() [2/2]

void amrex::Abort ( const std::string &  msg)

Print out message to cerr and exit via abort().

◆ Abort_host()

void amrex::Abort_host ( const char *  msg)

◆ abs() [1/7]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T amrex::abs ( const GpuComplex< T > &  a_z)
noexcept

Return the absolute value of a complex number.

◆ Abs() [1/2]

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::Abs ( FabArray< FAB > &  fa,
int  icomp,
int  numcomp,
const IntVect nghost 
)

◆ Abs() [2/2]

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::Abs ( FabArray< FAB > &  fa,
int  icomp,
int  numcomp,
int  nghost 
)

◆ accrete() [1/2]

void amrex::accrete ( BoxDomain dest,
const BoxDomain fin,
int  sz 
)

Grow each Box in BoxDomain fin by size sz and place the result into BoxDomain dest.

◆ accrete() [2/2]

BoxList amrex::accrete ( const BoxList bl,
int  sz 
)

Returns a new BoxList in which each Box is grown by the given size.

◆ Add() [1/2]

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::Add ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src,
int  srccomp,
int  dstcomp,
int  numcomp,
const IntVect nghost 
)

◆ Add() [2/2]

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::Add ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src,
int  srccomp,
int  dstcomp,
int  numcomp,
int  nghost 
)

◆ AddFabGhostIndicatorField()

void amrex::AddFabGhostIndicatorField ( const FArrayBox fab,
int  ngrow,
Node &  res 
)

◆ adjCell()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::adjCell ( const Box b,
Orientation  face,
int  len = 1 
)
noexcept

Similar to adjCellLo and adjCellHi; operates on given face.

◆ adjCellHi()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::adjCellHi ( const Box b,
int  dir,
int  len = 1 
)
noexcept

Similar to adjCellLo but builds an adjacent Box on the high end.

◆ adjCellLo()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::adjCellLo ( const Box b,
int  dir,
int  len = 1 
)
noexcept

Returns the cell centered Box of length len adjacent to b on the low end along the coordinate direction dir. The return Box is identical to b in the other directions. The return Box and b have an empty intersection. NOTE: len >= 1 NOTE: Box retval = b.adjCellLo(b,dir,len) is equivalent to the following set of operations: Box retval(b); retval.convert(dir,Box::CELL); retval.setrange(dir,retval.smallEnd(dir)-len,len);.

◆ aligned_size()

std::size_t amrex::aligned_size ( std::size_t  align_requirement,
std::size_t  size 
)
inlinenoexcept

Given a minimum required size of size bytes, this returns the next largest arena size that will align to align_requirement bytes.

◆ AllGatherBoxes()

void amrex::AllGatherBoxes ( Vector< Box > &  bxs,
int  n_extra_reserve 
)

◆ AlmostEqual()

bool amrex::AlmostEqual ( const RealBox box1,
const RealBox box2,
Real  eps 
)
noexcept

Check for equality of real boxes within a certain tolerance.

◆ almostEqual()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE std::enable_if<std::is_floating_point<T>::value,bool>::type amrex::almostEqual ( x,
y,
int  ulp = 2 
)

◆ AMRErrorTag_BOX()

void amrex::AMRErrorTag_BOX ( const Box bx,
Array4< char > const &  tag,
const RealBox tag_rb,
const Geometry geom,
char  tagval 
)
inlinenoexcept

◆ AMRErrorTag_GRAD()

void amrex::AMRErrorTag_GRAD ( const Box bx,
Array4< const Real > const &  dat,
Array4< char > const &  tag,
Real  threshold,
char  tagval 
)
inline

◆ AMRErrorTag_GREATER()

void amrex::AMRErrorTag_GREATER ( const Box bx,
Array4< const Real > const &  dat,
Array4< char > const &  tag,
Real  threshold,
char  tagval 
)
inlinenoexcept

◆ AMRErrorTag_LESS()

void amrex::AMRErrorTag_LESS ( const Box bx,
Array4< const Real > const &  dat,
Array4< char > const &  tag,
Real  threshold,
char  tagval 
)
inlinenoexcept

◆ AMRErrorTag_RELGRAD()

void amrex::AMRErrorTag_RELGRAD ( const Box bx,
Array4< const Real > const &  dat,
Array4< char > const &  tag,
Real  threshold,
char  tagval 
)
inline

◆ AMRErrorTag_VORT()

void amrex::AMRErrorTag_VORT ( const Box bx,
Array4< const Real > const &  dat,
Array4< char > const &  tag,
int  level,
Real  threshold,
char  tagval 
)
inlinenoexcept

◆ amrex_avg_cc_to_fc() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avg_cc_to_fc ( int  i,
int  j,
int  k,
int  n,
Box const &  xbx,
Box const &  ybx,
Box const &  zbx,
Array4< Real > const &  fx,
Array4< Real > const &  fy,
Array4< Real > const &  fz,
Array4< Real const > const &  cc,
bool  use_harmonic_averaging 
)
noexcept

◆ amrex_avg_cc_to_fc() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avg_cc_to_fc ( int  i,
int  j,
int  ,
int  n,
Box const &  xbx,
Box const &  ybx,
Array4< Real > const &  fx,
Array4< Real > const &  fy,
Array4< Real const > const &  cc,
bool  use_harmonic_averaging 
)
noexcept

◆ amrex_avg_cc_to_fc() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avg_cc_to_fc ( int  i,
int  ,
int  ,
int  n,
Box const &  xbx,
Array4< Real > const &  fx,
Array4< Real const > const &  cc,
GeometryData const &  gd,
bool  use_harmonic_averaging 
)
noexcept

◆ amrex_avg_eg_to_cc() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avg_eg_to_cc ( int  i,
int  j,
int  k,
Array4< Real > const &  cc,
Array4< Real const > const &  Ex,
Array4< Real const > const &  Ey,
Array4< Real const > const &  Ez,
int  cccomp 
)
noexcept

◆ amrex_avg_eg_to_cc() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avg_eg_to_cc ( int  i,
int  j,
int  ,
Array4< Real > const &  cc,
Array4< Real const > const &  Ex,
Array4< Real const > const &  Ey,
int  cccomp 
)
noexcept

◆ amrex_avg_eg_to_cc() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avg_eg_to_cc ( int  i,
int  ,
int  ,
Array4< Real > const &  cc,
Array4< Real const > const &  Ex,
int  cccomp 
)
noexcept

◆ amrex_avg_fc_to_cc() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avg_fc_to_cc ( int  i,
int  j,
int  k,
Array4< Real > const &  cc,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
Array4< Real const > const &  fz,
int  cccomp 
)
noexcept

◆ amrex_avg_fc_to_cc() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avg_fc_to_cc ( int  i,
int  j,
int  ,
Array4< Real > const &  cc,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
int  cccomp 
)
noexcept

◆ amrex_avg_fc_to_cc() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avg_fc_to_cc ( int  i,
int  ,
int  ,
Array4< Real > const &  cc,
Array4< Real const > const &  fx,
int  cccomp,
GeometryData const &  gd 
)
noexcept

◆ amrex_avg_nd_to_cc()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avg_nd_to_cc ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  cc,
Array4< Real const > const &  nd,
int  cccomp,
int  ndcomp 
)
noexcept

◆ amrex_avgdown() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avgdown ( Box const &  bx,
Array4< Real > const &  crse,
Array4< Real const > const &  fine,
int  ccomp,
int  fcomp,
int  ncomp,
IntVect const &  ratio 
)
noexcept

◆ amrex_avgdown() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avgdown ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  crse,
Array4< Real const > const &  fine,
int  ccomp,
int  fcomp,
IntVect const &  ratio 
)
noexcept

◆ amrex_avgdown_edges() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avgdown_edges ( Box const &  bx,
Array4< Real > const &  crse,
Array4< Real const > const &  fine,
int  ccomp,
int  fcomp,
int  ncomp,
IntVect const &  ratio,
int  idir 
)
noexcept

◆ amrex_avgdown_edges() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avgdown_edges ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  crse,
Array4< Real const > const &  fine,
int  ccomp,
int  fcomp,
IntVect const &  ratio,
int  idir 
)
noexcept

◆ amrex_avgdown_faces() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avgdown_faces ( Box const &  bx,
Array4< Real > const &  crse,
Array4< Real const > const &  fine,
int  ccomp,
int  fcomp,
int  ncomp,
IntVect const &  ratio,
int  idir 
)
noexcept

◆ amrex_avgdown_faces() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avgdown_faces ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  crse,
Array4< Real const > const &  fine,
int  ccomp,
int  fcomp,
IntVect const &  ratio,
int  idir 
)
noexcept

◆ amrex_avgdown_nodes() [1/2]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avgdown_nodes ( Box const &  bx,
Array4< T > const &  crse,
Array4< T const > const &  fine,
int  ccomp,
int  fcomp,
int  ncomp,
IntVect const &  ratio 
)
noexcept

◆ amrex_avgdown_nodes() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avgdown_nodes ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  crse,
Array4< Real const > const &  fine,
int  ccomp,
int  fcomp,
IntVect const &  ratio 
)
noexcept

◆ amrex_avgdown_with_vol()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_avgdown_with_vol ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  crse,
Array4< Real const > const &  fine,
Array4< Real const > const &  fv,
int  ccomp,
int  fcomp,
IntVect const &  ratio 
)
noexcept

◆ amrex_compute_convective_difference() [1/2]

AMREX_GPU_HOST_DEVICE void amrex::amrex_compute_convective_difference ( Box const &  bx,
Array4< amrex::Real > const &  diff,
Array4< Real const > const &  u_face,
Array4< Real const > const &  v_face,
Array4< Real const > const &  s_on_x_face,
Array4< Real const > const &  s_on_y_face,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
inlinenoexcept

◆ amrex_compute_convective_difference() [2/2]

AMREX_GPU_HOST_DEVICE void amrex::amrex_compute_convective_difference ( Box const &  bx,
Array4< Real > const &  diff,
Array4< Real const > const &  u_face,
Array4< Real const > const &  v_face,
Array4< Real const > const &  w_face,
Array4< Real const > const &  s_on_x_face,
Array4< Real const > const &  s_on_y_face,
Array4< Real const > const &  s_on_z_face,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
inlinenoexcept

◆ amrex_compute_divergence() [1/3]

AMREX_GPU_HOST_DEVICE void amrex::amrex_compute_divergence ( Box const &  bx,
Array4< Real > const &  divu,
Array4< Real const > const &  u,
Array4< Real const > const &  v,
Array4< Real const > const &  w,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
inlinenoexcept

◆ amrex_compute_divergence() [2/3]

AMREX_GPU_HOST_DEVICE void amrex::amrex_compute_divergence ( Box const &  bx,
Array4< Real > const &  divu,
Array4< Real const > const &  u,
Array4< Real const > const &  v,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
inlinenoexcept

◆ amrex_compute_divergence() [3/3]

AMREX_GPU_HOST_DEVICE void amrex::amrex_compute_divergence ( Box const &  bx,
Array4< Real > const &  divu,
Array4< Real const > const &  u,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
inlinenoexcept

◆ amrex_compute_divergence_rz()

AMREX_GPU_HOST_DEVICE void amrex::amrex_compute_divergence_rz ( Box const &  bx,
Array4< Real > const &  divu,
Array4< Real const > const &  u,
Array4< Real const > const &  v,
Array4< Real const > const &  ax,
Array4< Real const > const &  ay,
Array4< Real const > const &  vol 
)
inlinenoexcept

◆ amrex_compute_gradient() [1/3]

AMREX_GPU_HOST_DEVICE void amrex::amrex_compute_gradient ( Box const &  bx,
Array4< Real > const &  grad,
Array4< Real const > const &  u,
Array4< Real const > const &  v,
Array4< Real const > const &  w,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
inlinenoexcept

◆ amrex_compute_gradient() [2/3]

AMREX_GPU_HOST_DEVICE void amrex::amrex_compute_gradient ( Box const &  bx,
Array4< Real > const &  grad,
Array4< Real const > const &  u,
Array4< Real const > const &  v,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
inlinenoexcept

◆ amrex_compute_gradient() [3/3]

AMREX_GPU_HOST_DEVICE void amrex::amrex_compute_gradient ( Box const &  bx,
Array4< Real > const &  grad,
Array4< Real const > const &  u,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
inlinenoexcept

◆ amrex_compute_gradient_rz()

AMREX_GPU_HOST_DEVICE void amrex::amrex_compute_gradient_rz ( Box const &  bx,
Array4< Real > const &  grad,
Array4< Real const > const &  u,
Array4< Real const > const &  v,
Array4< Real const > const &  ax,
Array4< Real const > const &  ay,
Array4< Real const > const &  vol 
)
inlinenoexcept

◆ amrex_deposit_cic()

template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_deposit_cic ( P const &  p,
int  nc,
amrex::Array4< amrex::Real > const &  rho,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  plo,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  dxi 
)

◆ amrex_deposit_particle_dx_cic()

template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_deposit_particle_dx_cic ( P const &  p,
int  nc,
amrex::Array4< amrex::Real > const &  rho,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  plo,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  dxi,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  pdxi 
)

◆ amrex_fill_slice_interp()

AMREX_GPU_HOST_DEVICE void amrex::amrex_fill_slice_interp ( Box const &  bx,
Array4< Real >  slice,
Array4< Real const > const &  full,
int  scomp,
int  fcomp,
int  ncomp,
int  dir,
Real  coord,
GeometryData const &  gd 
)
inlinenoexcept

◆ amrex_first_order_extrap_cpu()

AMREX_GPU_HOST AMREX_FORCE_INLINE void amrex::amrex_first_order_extrap_cpu ( amrex::Box const &  bx,
int  nComp,
amrex::Array4< const int > const &  mask,
amrex::Array4< amrex::Real > const &  data 
)
noexcept

◆ amrex_first_order_extrap_gpu()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_first_order_extrap_gpu ( int  i,
int  j,
int  k,
int  n,
amrex::Box const &  bx,
amrex::Array4< const int > const &  mask,
amrex::Array4< amrex::Real > const &  data 
)
noexcept

◆ amrex_interpolate_cic()

template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::amrex_interpolate_cic ( P const &  p,
int  nc,
amrex::Array4< amrex::Real const > const &  acc,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  plo,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  dxi 
)

◆ amrex_iparser_delete()

void amrex::amrex_iparser_delete ( struct amrex_iparser iparser)

◆ amrex_iparser_new()

struct amrex_iparser * amrex::amrex_iparser_new ( )

◆ amrex_parser_delete()

void amrex::amrex_parser_delete ( struct amrex_parser parser)

◆ amrex_parser_new()

struct amrex_parser * amrex::amrex_parser_new ( )

◆ amrex_setarea() [1/2]

AMREX_GPU_HOST_DEVICE void amrex::amrex_setarea ( Box const &  bx,
Array4< Real > const &  area,
GpuArray< Real, 1 > const &  offset,
GpuArray< Real, 1 > const &  dx,
const int  ,
const int  coord 
)
inlinenoexcept

◆ amrex_setarea() [2/2]

AMREX_GPU_HOST_DEVICE void amrex::amrex_setarea ( Box const &  bx,
Array4< Real > const &  area,
GpuArray< Real, 2 > const &  offset,
GpuArray< Real, 2 > const &  dx,
const int  dir,
const int  coord 
)
inlinenoexcept

◆ amrex_setdloga() [1/2]

AMREX_GPU_HOST_DEVICE void amrex::amrex_setdloga ( Box const &  bx,
Array4< Real > const &  dloga,
GpuArray< Real, 1 > const &  offset,
GpuArray< Real, 1 > const &  dx,
const int  ,
const int  coord 
)
inlinenoexcept

◆ amrex_setdloga() [2/2]

AMREX_GPU_HOST_DEVICE void amrex::amrex_setdloga ( Box const &  bx,
Array4< Real > const &  dloga,
GpuArray< Real, 2 > const &  offset,
GpuArray< Real, 2 > const &  dx,
const int  dir,
const int  coord 
)
inlinenoexcept

◆ amrex_setvol() [1/2]

AMREX_GPU_HOST_DEVICE void amrex::amrex_setvol ( Box const &  bx,
Array4< Real > const &  vol,
GpuArray< Real, 1 > const &  offset,
GpuArray< Real, 1 > const &  dx,
const int  coord 
)
inlinenoexcept

◆ amrex_setvol() [2/2]

AMREX_GPU_HOST_DEVICE void amrex::amrex_setvol ( Box const &  bx,
Array4< Real > const &  vol,
GpuArray< Real, 2 > const &  offset,
GpuArray< Real, 2 > const &  dx,
const int  coord 
)
inlinenoexcept

◆ Apply()

template<typename F , typename TP >
constexpr AMREX_GPU_HOST_DEVICE auto amrex::Apply ( F &&  f,
TP &&  t 
) -> typename detail::apply_result<F,detail::tuple_decay_t<TP> >::type
constexpr

◆ arg()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T amrex::arg ( const GpuComplex< T > &  a_z)
noexcept

Return the angle of a complex number's polar representation.

◆ Assert()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::Assert ( const char *  EX,
const char *  file,
int  line,
const char *  msg = nullptr 
)

◆ Assert_host()

void amrex::Assert_host ( const char *  EX,
const char *  file,
int  line,
const char *  msg 
)

Prints assertion failed messages to cerr and exits via abort(). Intended for use by the BL_ASSERT() macro in <AMReX_BLassert.H>.

◆ average_cellcenter_to_face() [1/2]

void amrex::average_cellcenter_to_face ( const Array< MultiFab *, AMREX_SPACEDIM > &  fc,
const MultiFab cc,
const Geometry geom,
int  ncomp,
bool  use_harmonic_averaging 
)

◆ average_cellcenter_to_face() [2/2]

void amrex::average_cellcenter_to_face ( const Vector< MultiFab * > &  fc,
const MultiFab cc,
const Geometry geom,
int  ncomp,
bool  use_harmonic_averaging 
)

Average cell-centered MultiFab onto face-based MultiFab.

◆ average_down() [1/4]

void amrex::average_down ( const MultiFab S_fine,
MultiFab S_crse,
const Geometry fine_geom,
const Geometry crse_geom,
int  scomp,
int  ncomp,
const IntVect ratio 
)

Average fine cell-based MultiFab onto crse cell-centered MultiFab using volume-weighting. This routine DOES NOT assume that the crse BoxArray is a coarsened version of the fine BoxArray.

◆ average_down() [2/4]

void amrex::average_down ( const MultiFab S_fine,
MultiFab S_crse,
const Geometry fgeom,
const Geometry cgeom,
int  scomp,
int  ncomp,
int  rr 
)

◆ average_down() [3/4]

void amrex::average_down ( const MultiFab S_fine,
MultiFab S_crse,
int  scomp,
int  ncomp,
const IntVect ratio 
)

Average MultiFab onto crse MultiFab without volume weighting. This routine DOES NOT assume that the crse BoxArray is a coarsened version of the fine BoxArray. Work for both cell-centered and nodal MultiFabs.

◆ average_down() [4/4]

void amrex::average_down ( const MultiFab S_fine,
MultiFab S_crse,
int  scomp,
int  ncomp,
int  rr 
)

◆ average_down_edges() [1/3]

void amrex::average_down_edges ( const Array< const MultiFab *, AMREX_SPACEDIM > &  fine,
const Array< MultiFab *, AMREX_SPACEDIM > &  crse,
const IntVect ratio,
int  ngcrse 
)

◆ average_down_edges() [2/3]

void amrex::average_down_edges ( const MultiFab fine,
MultiFab crse,
const IntVect ratio,
int  ngcrse = 0 
)

This version does average down for one direction. It uses the IndexType of MultiFabs to determine the direction. It is expected that one direction is cell-centered and the rest are nodal.

◆ average_down_edges() [3/3]

void amrex::average_down_edges ( const Vector< const MultiFab * > &  fine,
const Vector< MultiFab * > &  crse,
const IntVect ratio,
int  ngcrse 
)

Average fine edge-based MultiFab onto crse edge-based MultiFab.

Average fine edge-based MultiFab onto crse edge-based MultiFab. This routine assumes that the crse BoxArray is a coarsened version of the fine BoxArray.

◆ average_down_faces() [1/7]

void amrex::average_down_faces ( const Array< const MultiFab *, AMREX_SPACEDIM > &  fine,
const Array< MultiFab *, AMREX_SPACEDIM > &  crse,
const IntVect ratio,
const Geometry crse_geom 
)

◆ average_down_faces() [2/7]

void amrex::average_down_faces ( const Array< const MultiFab *, AMREX_SPACEDIM > &  fine,
const Array< MultiFab *, AMREX_SPACEDIM > &  crse,
const IntVect ratio,
int  ngcrse 
)

◆ average_down_faces() [3/7]

void amrex::average_down_faces ( const Array< const MultiFab *, AMREX_SPACEDIM > &  fine,
const Array< MultiFab *, AMREX_SPACEDIM > &  crse,
int  ratio,
int  ngcrse 
)

◆ average_down_faces() [4/7]

void amrex::average_down_faces ( const MultiFab fine,
MultiFab crse,
const IntVect ratio,
const Geometry crse_geom 
)

◆ average_down_faces() [5/7]

void amrex::average_down_faces ( const MultiFab fine,
MultiFab crse,
const IntVect ratio,
int  ngcrse = 0 
)

This version does average down for one direction. It uses the IndexType of MultiFabs to determine the direction. It is expected that one direction is nodal and the rest are cell-centered.

◆ average_down_faces() [6/7]

void amrex::average_down_faces ( const Vector< const MultiFab * > &  fine,
const Vector< MultiFab * > &  crse,
const IntVect ratio,
int  ngcrse 
)

Average fine face-based MultiFab onto crse face-based MultiFab.

◆ average_down_faces() [7/7]

void amrex::average_down_faces ( const Vector< const MultiFab * > &  fine,
const Vector< MultiFab * > &  crse,
int  ratio,
int  ngcrse 
)

◆ average_down_nodal()

template<typename FAB >
void amrex::average_down_nodal ( const FabArray< FAB > &  fine,
FabArray< FAB > &  crse,
const IntVect ratio,
int  ngcrse,
bool  mfiter_is_definitely_safe 
)

Average fine node-based MultiFab onto crse node-centered MultiFab.

Average fine node-based MultiFab onto crse node-based MultiFab. This routine assumes that the crse BoxArray is a coarsened version of the fine BoxArray.

◆ average_edge_to_cellcenter()

void amrex::average_edge_to_cellcenter ( MultiFab cc,
int  dcomp,
const Vector< const MultiFab * > &  edge,
int  ngrow = 0 
)

Average edge-based MultiFab onto cell-centered MultiFab. This fills in ngrow ghost cells in the cell-centered MultiFab. Both cell centered and edge centered MultiFabs need to have ngrow ghost values

◆ average_face_to_cellcenter() [1/4]

void amrex::average_face_to_cellcenter ( MultiFab cc,
const Array< const MultiFab *, AMREX_SPACEDIM > &  fc,
const Geometry geom 
)

◆ average_face_to_cellcenter() [2/4]

void amrex::average_face_to_cellcenter ( MultiFab cc,
const Vector< const MultiFab * > &  fc,
const Geometry geom 
)

◆ average_face_to_cellcenter() [3/4]

void amrex::average_face_to_cellcenter ( MultiFab cc,
int  dcomp,
const Array< const MultiFab *, AMREX_SPACEDIM > &  fc,
int  ngrow 
)

◆ average_face_to_cellcenter() [4/4]

void amrex::average_face_to_cellcenter ( MultiFab cc,
int  dcomp,
const Vector< const MultiFab * > &  fc,
int  ngrow 
)

Average face-based MultiFab onto cell-centered MultiFab.

◆ average_node_to_cellcenter()

void amrex::average_node_to_cellcenter ( MultiFab cc,
int  dcomp,
const MultiFab nd,
int  scomp,
int  ncomp,
int  ngrow 
)

Average nodal-based MultiFab onto cell-centered MultiFab.

◆ avgDown()

void amrex::avgDown ( MultiFab S_crse,
MultiFab S_fine,
int  scomp,
int  dcomp,
int  ncomp,
Vector< int > &  ratio 
)

◆ avgDown_doit()

void amrex::avgDown_doit ( const FArrayBox fine_fab,
FArrayBox crse_fab,
const Box ovlp,
int  scomp,
int  dcomp,
int  ncomp,
Vector< int > &  ratio 
)

◆ BaseFab_Finalize()

void amrex::BaseFab_Finalize ( )

◆ BaseFab_Initialize()

void amrex::BaseFab_Initialize ( )

◆ BASISREALV()

AMREX_GPU_HOST_DEVICE RealVect amrex::BASISREALV ( int  dir)
inlinenoexcept

Returns a basis vector in the given coordinate direction.
In 2-D:
BASISREALV(0) == (1.,0.); BASISREALV(1) == (0.,1.).
In 3-D:
BASISREALV(0) == (1.,0.,0.); BASISREALV(1) == (0.,1.,0.); BASISREALV(2) == (0.,0.,1.).
Note that the coordinate directions are based at zero.

◆ BASISV()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::BASISV ( int  dir)
noexcept

Returns a basis vector in the given coordinate direction; eg. IntVect BASISV(1) == (0,1,0). Note that the coordinate directions are zero based.

◆ bdryHi()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::bdryHi ( const Box b,
int  dir,
int  len = 1 
)
noexcept

Returns the edge-centered Box (in direction dir) defining the high side of Box b.

◆ bdryLo()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::bdryLo ( const Box b,
int  dir,
int  len = 1 
)
noexcept

Returns the edge-centered Box (in direction dir) defining the low side of Box b.

◆ bdryNode()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::bdryNode ( const Box b,
Orientation  face,
int  len = 1 
)
noexcept

Similar to bdryLo and bdryHi except that it operates on the given face of box b.

◆ begin()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::begin ( Box const &  box)
noexcept

◆ bisect() [1/2]

template<typename T , typename I , typename std::enable_if< std::is_integral< I >::value, int >::type = 0>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE I amrex::bisect ( T const *  d,
lo,
hi,
T const &  v 
)

◆ bisect() [2/2]

template<class T , class F , typename std::enable_if< std::is_floating_point< T >::value, int >::type FOO = 0>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T amrex::bisect ( lo,
hi,
f,
tol = 1e-12,
int  max_iter = 100 
)

◆ boxComplement()

BoxArray amrex::boxComplement ( const Box b1in,
const Box b2 
)

Make a BoxArray from the the complement of b2 in b1in.

◆ boxDiff() [1/2]

void amrex::boxDiff ( BoxList bl_diff,
const Box b1in,
const Box b2 
)

◆ boxDiff() [2/2]

BoxList amrex::boxDiff ( const Box b1in,
const Box b2 
)

Returns BoxList defining the compliment of b2 in b1in.

◆ BroadcastArray()

template<class T >
void amrex::BroadcastArray ( Vector< T > &  aT,
int  myLocalId,
int  rootId,
const MPI_Comm localComm 
)

◆ BroadcastBool()

void amrex::BroadcastBool ( bool &  bBool,
int  myLocalId,
int  rootId,
const MPI_Comm localComm 
)

◆ BroadcastString()

void amrex::BroadcastString ( std::string &  bStr,
int  myLocalId,
int  rootId,
const MPI_Comm localComm 
)

◆ BroadcastStringArray()

void amrex::BroadcastStringArray ( Vector< std::string > &  bSA,
int  myLocalId,
int  rootId,
const MPI_Comm localComm 
)

◆ bytesOf() [1/2]

template<typename Key , typename T , class Compare >
Long amrex::bytesOf ( const std::map< Key, T, Compare > &  m)

◆ bytesOf() [2/2]

template<typename T >
Long amrex::bytesOf ( const std::vector< T > &  v)

◆ call_device() [1/2]

template<class L >
AMREX_GPU_DEVICE void amrex::call_device ( L &&  f0)
noexcept

◆ call_device() [2/2]

template<class L , class... Lambdas>
AMREX_GPU_DEVICE void amrex::call_device ( L &&  f0,
Lambdas &&...  fs 
)
noexcept

◆ cast() [1/2]

template<class Tto , class Tfrom >
AMREX_GPU_HOST_DEVICE void amrex::cast ( BaseFab< Tto > &  tofab,
BaseFab< Tfrom > const &  fromfab,
Box const &  bx,
SrcComp  scomp,
DestComp  dcomp,
NumComps  ncomp 
)
noexcept

◆ cast() [2/2]

template<typename T , typename U >
T amrex::cast ( U const &  mf_in)

example: auto mf = amrex::cast<MultiFab>(imf);

◆ cholsol_for_eb() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::cholsol_for_eb ( Array2D< Real, 0, 17, 0, 5 > &  Amatrix,
Array1D< Real, 0, 5 > &  b 
)

◆ cholsol_for_eb() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::cholsol_for_eb ( Array2D< Real, 0, 53, 0, 9 > &  Amatrix,
Array1D< Real, 0, 9 > &  b 
)

◆ cholsol_np10()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::cholsol_np10 ( Array2D< Real, 0, 35, 0, 9 > &  Amatrix,
Array1D< Real, 0, 9 > &  b 
)

◆ cholsol_np6()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::cholsol_np6 ( Array2D< Real, 0, 11, 0, 5 > &  Amatrix,
Array1D< Real, 0, 5 > &  b 
)

◆ cic_interpolate() [1/2]

template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::cic_interpolate ( const P &  p,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  plo,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  dxi,
const amrex::Array4< amrex::Real const > &  uccarr,
amrex::ParticleReal *  val 
)

◆ cic_interpolate() [2/2]

template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::cic_interpolate ( const P &  p,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  plo,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  dxi,
const amrex::Array4< amrex::Real const > &  uccarr,
amrex::ParticleReal *  val,
int  M 
)

◆ Clamp()

template<typename T >
AMREX_GPU_HOST_DEVICE constexpr const AMREX_FORCE_INLINE T& amrex::Clamp ( const T &  v,
const T &  lo,
const T &  hi 
)
constexpr

◆ clz() [1/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::clz ( std::uint16_t  x)
noexcept

◆ clz() [2/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::clz ( std::uint32_t  x)
noexcept

◆ clz() [3/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::clz ( std::uint64_t  x)
noexcept

◆ clz() [4/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::clz ( std::uint8_t  x)
noexcept

◆ coarsen() [1/12]

void amrex::coarsen ( BoxDomain dest,
const BoxDomain fin,
int  ratio 
)

Coarsen all Boxes in the domain by the refinement ratio. The result is placed into a new BoxDomain.

◆ coarsen() [2/12]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::coarsen ( const Box b,
const IntVect ref_ratio 
)
noexcept

Coarsen Box by given (positive) refinement ratio. NOTE: if type(dir) = CELL centered: lo <- lo/ratio and hi <- hi/ratio. NOTE: if type(dir) = NODE centered: lo <- lo/ratio and hi <- hi/ratio + ((hiratio)==0 ? 0 : 1). That is, refinement of coarsened Box must contain the original Box.

◆ coarsen() [3/12]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::coarsen ( const Box b,
int  ref_ratio 
)
noexcept

Coarsen Box by given (positive) refinement ratio. NOTE: if type(dir) = CELL centered: lo <- lo/ratio and hi <- hi/ratio. NOTE: if type(dir) = NODE centered: lo <- lo/ratio and hi <- hi/ratio + ((hiratio)==0 ? 0 : 1). That is, refinement of coarsened Box must contain the original Box.

◆ coarsen() [4/12]

BoxArray amrex::coarsen ( const BoxArray ba,
const IntVect ratio 
)

◆ coarsen() [5/12]

BoxArray amrex::coarsen ( const BoxArray ba,
int  ratio 
)

◆ coarsen() [6/12]

BoxList amrex::coarsen ( const BoxList bl,
int  ratio 
)

Returns a new BoxList in which each Box is coarsened by the given ratio.

◆ coarsen() [7/12]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::coarsen ( const IntVect p,
int  s 
)
noexcept

Returns an IntVect that is the component-wise integer projection of p by s.

◆ coarsen() [8/12]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::coarsen ( const IntVect p1,
const IntVect p2 
)
noexcept

Returns an IntVect which is the component-wise integer projection of IntVect p1 by IntVect p2.

◆ coarsen() [9/12]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::coarsen ( Dim3 const &  fine,
IntVect const &  ratio 
)
noexcept

◆ coarsen() [10/12]

Geometry amrex::coarsen ( Geometry const &  fine,
int  rr 
)
inline

◆ coarsen() [11/12]

Geometry amrex::coarsen ( Geometry const &  fine,
IntVect const &  rr 
)
inline

◆ coarsen() [12/12]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::coarsen ( int  i,
int  ratio 
)
noexcept

◆ coarsen_overset_mask() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::coarsen_overset_mask ( Box const &  bx,
Array4< int > const &  cmsk,
Array4< int const > const &  fmsk 
)
noexcept

◆ coarsen_overset_mask() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::coarsen_overset_mask ( int  i,
int  j,
int  k,
Array4< int > const &  cmsk,
Array4< int const > const &  fmsk 
)
noexcept

◆ CollectMProfStats()

void amrex::CollectMProfStats ( std::map< std::string, BLProfiler::ProfStats > &  mProfStats,
const Vector< Vector< BLProfStats::FuncStat > > &  funcStats,
const Vector< std::string > &  fNames,
Real  runTime,
int  whichProc 
)

◆ command_argument_count()

int amrex::command_argument_count ( )

◆ communicateParticlesFinish()

void amrex::communicateParticlesFinish ( const ParticleCopyPlan plan)

◆ communicateParticlesStart()

template<class PC , class Buffer , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void amrex::communicateParticlesStart ( const PC &  pc,
ParticleCopyPlan plan,
const Buffer &  snd_buffer,
Buffer &  rcv_buffer 
)

◆ complementIn() [1/3]

BoxArray amrex::complementIn ( const Box b,
const BoxArray ba 
)

Make a BoxArray from the complement of BoxArray ba in Box b.

◆ complementIn() [2/3]

BoxDomain amrex::complementIn ( const Box b,
const BoxDomain bl 
)

Returns the complement of BoxDomain bl in Box b.

◆ complementIn() [3/3]

BoxList amrex::complementIn ( const Box b,
const BoxList bl 
)

Returns a BoxList defining the complement of BoxList bl in Box b.

◆ computeDivergence()

void amrex::computeDivergence ( MultiFab divu,
const Array< MultiFab const *, AMREX_SPACEDIM > &  umac,
const Geometry geom 
)

Computes divergence of face-data stored in the umac MultiFab.

◆ computeGradient()

void amrex::computeGradient ( MultiFab grad,
const Array< MultiFab const *, AMREX_SPACEDIM > &  umac,
const Geometry geom 
)

Computes gradient of face-data stored in the umac MultiFab.

◆ computeNeighborProcs()

Vector< int > amrex::computeNeighborProcs ( const ParGDBBase a_gdb,
int  ngrow 
)

◆ computeRefFac()

IntVect amrex::computeRefFac ( const ParGDBBase a_gdb,
int  src_lev,
int  lev 
)

◆ Concatenate()

std::string amrex::Concatenate ( const std::string &  root,
int  num,
int  mindigits = 5 
)

Returns rootNNNN where NNNN == num.

◆ convert() [1/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::convert ( const Box b,
const IndexType typ 
)
noexcept

◆ convert() [2/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::convert ( const Box b,
const IntVect typ 
)
noexcept

Returns a Box with different type.

◆ convert() [3/4]

BoxArray amrex::convert ( const BoxArray ba,
const IntVect typ 
)

◆ convert() [4/4]

BoxArray amrex::convert ( const BoxArray ba,
IndexType  typ 
)

◆ Copy() [1/2]

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::Copy ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src,
int  srccomp,
int  dstcomp,
int  numcomp,
const IntVect nghost 
)

◆ Copy() [2/2]

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::Copy ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src,
int  srccomp,
int  dstcomp,
int  numcomp,
int  nghost 
)

◆ copyParticle() [1/2]

template<int NSR, int NSI, int NAR, int NAI>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::copyParticle ( const ParticleTileData< NSR, NSI, NAR, NAI > &  dst,
const ConstParticleTileData< NSR, NSI, NAR, NAI > &  src,
int  src_i,
int  dst_i 
)
noexcept

A general single particle copying routine that can run on the GPU.

Template Parameters
NSRnumber of extra reals in the particle struct
NSInumber of extra ints in the particle struct
NARnumber of reals in the struct-of-arrays
NAInumber of ints in the struct-of-arrays
Parameters
dstthe destination tile
srcthe source tile
src_ithe index in the source to read from
dst_ithe index in the destination to write to

◆ copyParticle() [2/2]

template<int NSR, int NSI, int NAR, int NAI>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::copyParticle ( const ParticleTileData< NSR, NSI, NAR, NAI > &  dst,
const ParticleTileData< NSR, NSI, NAR, NAI > &  src,
int  src_i,
int  dst_i 
)
noexcept

A general single particle copying routine that can run on the GPU.

Template Parameters
NSRnumber of extra reals in the particle struct
NSInumber of extra ints in the particle struct
NARnumber of reals in the struct-of-arrays
NAInumber of ints in the struct-of-arrays
Parameters
dstthe destination tile
srcthe source tile
src_ithe index in the source to read from
dst_ithe index in the destination to write to

◆ copyParticles() [1/2]

template<typename DstTile , typename SrcTile >
void amrex::copyParticles ( DstTile &  dst,
const SrcTile &  src 
)
noexcept

Copy particles from src to dst. This version copies all the particles, writing them to the beginning of dst.

Template Parameters
DstTilethe dst particle tile type
SrcTilethe src particle tile type
Parameters
dstthe destination tile
srcthe source tile
fthe function that will be applied to each particle

◆ copyParticles() [2/2]

template<typename DstTile , typename SrcTile , typename Index , typename N , std::enable_if_t< std::is_integral< Index >::value, int > foo = 0>
void amrex::copyParticles ( DstTile &  dst,
const SrcTile &  src,
Index  src_start,
Index  dst_start,
n 
)
noexcept

Copy particles from src to dst. This version copies n particles starting at index src_start, writing the result starting at dst_start.

Template Parameters
DstTilethe dst particle tile type
SrcTilethe src particle tile type
Indexthe index type, e.g. unsigned int
Nthe size type, e.g. Long
Parameters
dstthe destination tile
srcthe source tile
src_startthe offset at which to start reading particles from src
dst_startthe offset at which to start writing particles to dst
nthe number of particles to write

◆ CountSnds()

Long amrex::CountSnds ( const std::map< int, Vector< char > > &  not_ours,
Vector< Long > &  Snds 
)

◆ CreateDirectoryFailed()

void amrex::CreateDirectoryFailed ( const std::string &  dir)

Output a message and abort when couldn't create the directory.

◆ CRRBetweenLevels()

int amrex::CRRBetweenLevels ( int  fromlevel,
int  tolevel,
const Vector< int > &  refratios 
)

◆ DeallocateRandomSeedDevArray()

void amrex::DeallocateRandomSeedDevArray ( )

◆ decomp_chol_np10()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::decomp_chol_np10 ( Array2D< Real, 0, 9, 0, 9 > &  aa)

◆ decomp_chol_np6()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::decomp_chol_np6 ( Array2D< Real, 0, 5, 0, 5 > &  aa)

◆ DefaultGeometry()

const Geometry& amrex::DefaultGeometry ( )
inline

◆ diagShift()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::diagShift ( const IntVect p,
int  s 
)
noexcept

Returns IntVect obtained by adding s to each of the components of this IntVect.

◆ Distribute()

static void amrex::Distribute ( const std::vector< SFCToken > &  tokens,
const std::vector< Long > &  wgts,
int  nprocs,
Real  volpercpu,
std::vector< std::vector< int > > &  v 
)
static

◆ Divide() [1/2]

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::Divide ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src,
int  srccomp,
int  dstcomp,
int  numcomp,
const IntVect nghost 
)

◆ Divide() [2/2]

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::Divide ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src,
int  srccomp,
int  dstcomp,
int  numcomp,
int  nghost 
)

◆ doHandShake()

Long amrex::doHandShake ( const std::map< int, Vector< char > > &  not_ours,
Vector< Long > &  Snds,
Vector< Long > &  Rcvs 
)

◆ doHandShakeLocal()

Long amrex::doHandShakeLocal ( const std::map< int, Vector< char > > &  not_ours,
const Vector< int > &  neighbor_procs,
Vector< Long > &  Snds,
Vector< Long > &  Rcvs 
)

◆ dtoh_memcpy() [1/2]

template<class FAB , class foo = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::dtoh_memcpy ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src 
)

◆ dtoh_memcpy() [2/2]

template<class FAB , class foo = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::dtoh_memcpy ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src,
int  scomp,
int  dcomp,
int  ncomp 
)

◆ EB_average_down() [1/3]

void amrex::EB_average_down ( const MultiFab S_fine,
MultiFab S_crse,
const MultiFab vol_fine,
const MultiFab vfrac_fine,
int  scomp,
int  ncomp,
const IntVect ratio 
)

◆ EB_average_down() [2/3]

void amrex::EB_average_down ( const MultiFab S_fine,
MultiFab S_crse,
int  scomp,
int  ncomp,
const IntVect ratio 
)

◆ EB_average_down() [3/3]

void amrex::EB_average_down ( const MultiFab S_fine,
MultiFab S_crse,
int  scomp,
int  ncomp,
int  ratio 
)

◆ EB_average_down_boundaries() [1/2]

void amrex::EB_average_down_boundaries ( const MultiFab fine,
MultiFab crse,
const IntVect ratio,
int  ngcrse 
)

◆ EB_average_down_boundaries() [2/2]

void amrex::EB_average_down_boundaries ( const MultiFab fine,
MultiFab crse,
int  ratio,
int  ngcrse 
)

◆ EB_average_down_faces() [1/3]

void amrex::EB_average_down_faces ( const Array< const MultiFab *, AMREX_SPACEDIM > &  fine,
const Array< MultiFab *, AMREX_SPACEDIM > &  crse,
const IntVect ratio,
const Geometry crse_geom 
)

◆ EB_average_down_faces() [2/3]

void amrex::EB_average_down_faces ( const Array< const MultiFab *, AMREX_SPACEDIM > &  fine,
const Array< MultiFab *, AMREX_SPACEDIM > &  crse,
const IntVect ratio,
int  ngcrse 
)

◆ EB_average_down_faces() [3/3]

void amrex::EB_average_down_faces ( const Array< const MultiFab *, AMREX_SPACEDIM > &  fine,
const Array< MultiFab *, AMREX_SPACEDIM > &  crse,
int  ratio,
int  ngcrse 
)

◆ EB_average_face_to_cellcenter()

void amrex::EB_average_face_to_cellcenter ( MultiFab ccmf,
int  dcomp,
const Array< MultiFab const *, AMREX_SPACEDIM > &  fmf 
)

◆ eb_avg_fc_to_cc() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_avg_fc_to_cc ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  cc,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
Array4< Real const > const &  ax,
Array4< Real const > const &  ay,
Array4< EBCellFlag const > const &  flag 
)

◆ eb_avg_fc_to_cc() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_avg_fc_to_cc ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  cc,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
Array4< Real const > const &  fz,
Array4< Real const > const &  ax,
Array4< Real const > const &  ay,
Array4< Real const > const &  az,
Array4< EBCellFlag const > const &  flag 
)

◆ eb_avgdown()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_avgdown ( int  i,
int  j,
int  k,
Array4< Real const > const &  fine,
int  fcomp,
Array4< Real > const &  crse,
int  ccomp,
Array4< Real const > const &  vfrc,
Dim3 const &  ratio,
int  ncomp 
)

◆ eb_avgdown_boundaries()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_avgdown_boundaries ( int  i,
int  j,
int  k,
Array4< Real const > const &  fine,
int  fcomp,
Array4< Real > const &  crse,
int  ccomp,
Array4< Real const > const &  ba,
Dim3 const &  ratio,
int  ncomp 
)

◆ eb_avgdown_face_x()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_avgdown_face_x ( int  i,
int  j,
int  k,
Array4< Real const > const &  fine,
int  fcomp,
Array4< Real > const &  crse,
int  ccomp,
Array4< Real const > const &  area,
Dim3 const &  ratio,
int  ncomp 
)

◆ eb_avgdown_face_y()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_avgdown_face_y ( int  i,
int  j,
int  k,
Array4< Real const > const &  fine,
int  fcomp,
Array4< Real > const &  crse,
int  ccomp,
Array4< Real const > const &  area,
Dim3 const &  ratio,
int  ncomp 
)

◆ eb_avgdown_face_z()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_avgdown_face_z ( int  i,
int  j,
int  k,
Array4< Real const > const &  fine,
int  fcomp,
Array4< Real > const &  crse,
int  ccomp,
Array4< Real const > const &  area,
Dim3 const &  ratio,
int  ncomp 
)

◆ eb_avgdown_with_vol()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_avgdown_with_vol ( int  i,
int  j,
int  k,
Array4< Real const > const &  fine,
int  fcomp,
Array4< Real > const &  crse,
int  ccomp,
Array4< Real const > const &  fv,
Array4< Real const > const &  vfrc,
Dim3 const &  ratio,
int  ncomp 
)

◆ eb_compute_divergence() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_compute_divergence ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  divu,
Array4< Real const > const &  u,
Array4< Real const > const &  v,
Array4< int const > const &  ccm,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vfrc,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  fcx,
Array4< Real const > const &  fcy,
GpuArray< Real, 2 > const &  dxinv,
bool  already_on_centroids 
)

◆ eb_compute_divergence() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_compute_divergence ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  divu,
Array4< Real const > const &  u,
Array4< Real const > const &  v,
Array4< Real const > const &  w,
Array4< int const > const &  ccm,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vfrc,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  apz,
Array4< Real const > const &  fcx,
Array4< Real const > const &  fcy,
Array4< Real const > const &  fcz,
GpuArray< Real, 3 > const &  dxinv,
bool  already_on_centroids 
)

◆ EB_computeDivergence()

void amrex::EB_computeDivergence ( MultiFab divu,
const Array< MultiFab const *, AMREX_SPACEDIM > &  umac,
const Geometry geom,
bool  already_on_centroids 
)

◆ eb_flux_reg_crseadd_va() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_flux_reg_crseadd_va ( int  i,
int  j,
int  k,
Array4< Real > const &  d,
Array4< int const > const &  flag,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
Array4< Real const > const &  fz,
Array4< Real const > const &  vfrac,
Array4< Real const > const &  ax,
Array4< Real const > const &  ay,
Array4< Real const > const &  az,
Real  dtdx,
Real  dtdy,
Real  dtdz 
)

◆ eb_flux_reg_crseadd_va() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_flux_reg_crseadd_va ( int  i,
int  j,
int  k,
Array4< Real > const &  d,
Array4< int const > const &  flag,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
Array4< Real const > const &  vfrac,
Array4< Real const > const &  ax,
Array4< Real const > const &  ay,
Real  dtdx,
Real  dtdy 
)

◆ eb_flux_reg_fineadd_dm()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_flux_reg_fineadd_dm ( int  i,
int  j,
int  k,
int  n,
Box const &  dmbx,
Array4< Real > const &  d,
Array4< Real const > const &  dm,
Array4< Real const > const &  vfrac,
Dim3 const &  ratio,
Real  threshold 
)

◆ eb_flux_reg_fineadd_va_xhi()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_flux_reg_fineadd_va_xhi ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  d,
Array4< Real const > const &  f,
Array4< Real const > const &  vfrac,
Array4< Real const > const &  a,
Real  fac,
Dim3 const &  ratio 
)

◆ eb_flux_reg_fineadd_va_xlo()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_flux_reg_fineadd_va_xlo ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  d,
Array4< Real const > const &  f,
Array4< Real const > const &  vfrac,
Array4< Real const > const &  a,
Real  fac,
Dim3 const &  ratio 
)

◆ eb_flux_reg_fineadd_va_yhi()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_flux_reg_fineadd_va_yhi ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  d,
Array4< Real const > const &  f,
Array4< Real const > const &  vfrac,
Array4< Real const > const &  a,
Real  fac,
Dim3 const &  ratio 
)

◆ eb_flux_reg_fineadd_va_ylo()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_flux_reg_fineadd_va_ylo ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  d,
Array4< Real const > const &  f,
Array4< Real const > const &  vfrac,
Array4< Real const > const &  a,
Real  fac,
Dim3 const &  ratio 
)

◆ eb_flux_reg_fineadd_va_zhi()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_flux_reg_fineadd_va_zhi ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  d,
Array4< Real const > const &  f,
Array4< Real const > const &  vfrac,
Array4< Real const > const &  a,
Real  fac,
Dim3 const &  ratio 
)

◆ eb_flux_reg_fineadd_va_zlo()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_flux_reg_fineadd_va_zlo ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  d,
Array4< Real const > const &  f,
Array4< Real const > const &  vfrac,
Array4< Real const > const &  a,
Real  fac,
Dim3 const &  ratio 
)

◆ eb_interp_cc2cent()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_interp_cc2cent ( Box const &  box,
const Array4< Real > &  phicent,
Array4< Real const > const &  phicc,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  cent,
int  ncomp 
)
noexcept

◆ eb_interp_cc2face_x()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_interp_cc2face_x ( Box const &  ubx,
Array4< Real const > const &  phi,
Array4< Real > const &  edg_x,
int  ncomp,
const Box domain,
const BCRec bc 
)
noexcept

◆ eb_interp_cc2face_y()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_interp_cc2face_y ( Box const &  vbx,
Array4< Real const > const &  phi,
Array4< Real > const &  edg_y,
int  ncomp,
const Box domain,
const BCRec bc 
)
noexcept

◆ eb_interp_cc2face_z()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_interp_cc2face_z ( Box const &  wbx,
Array4< Real const > const &  phi,
Array4< Real > const &  edg_z,
int  ncomp,
const Box domain,
const BCRec bc 
)
noexcept

◆ eb_interp_cc2facecent_x()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_interp_cc2facecent_x ( Box const &  ubx,
Array4< Real const > const &  phi,
Array4< Real const > const &  apx,
Array4< Real const > const &  fcx,
Array4< Real > const &  edg_x,
int  ncomp,
const Box domain,
const BCRec bc 
)
noexcept

◆ eb_interp_cc2facecent_y()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_interp_cc2facecent_y ( Box const &  vbx,
Array4< Real const > const &  phi,
Array4< Real const > const &  apy,
Array4< Real const > const &  fcy,
Array4< Real > const &  edg_y,
int  ncomp,
const Box domain,
const BCRec bc 
)
noexcept

◆ eb_interp_cc2facecent_z()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_interp_cc2facecent_z ( Box const &  wbx,
Array4< Real const > const &  phi,
Array4< Real const > const &  apz,
Array4< Real const > const &  fcz,
Array4< Real > const &  edg_z,
int  ncomp,
const Box domain,
const BCRec bc 
)
noexcept

◆ EB_interp_CC_to_Centroid()

void amrex::EB_interp_CC_to_Centroid ( MultiFab cent,
const MultiFab cc,
int  scomp,
int  dcomp,
int  ncomp,
const Geometry geom 
)

◆ EB_interp_CC_to_FaceCentroid() [1/2]

void amrex::EB_interp_CC_to_FaceCentroid ( const MultiFab cc,
AMREX_D_DECL(MultiFab &fc_x, MultiFab &fc_y, MultiFab &fc_z)  ,
int  scomp,
int  dcomp,
int  ncomp,
const Geometry a_geom,
const Vector< BCRec > &  a_bcs 
)

◆ EB_interp_CC_to_FaceCentroid() [2/2]

void amrex::EB_interp_CC_to_FaceCentroid ( const MultiFab cc,
AMREX_D_DECL(MultiFab &fcx, MultiFab &fcy, MultiFab &fcz)  ,
int  scomp,
int  dcomp,
int  nc,
const Geometry geom,
const amrex::Vector< amrex::BCRec > &  a_bcs 
)

◆ EB_interp_CellCentroid_to_FaceCentroid() [1/3]

void amrex::EB_interp_CellCentroid_to_FaceCentroid ( const MultiFab phi_centroid,
AMREX_D_DECL(MultiFab &phi_xface, MultiFab &phi_yface, MultiFab &phi_zface)  ,
int  scomp,
int  dcomp,
int  ncomp,
const Geometry a_geom,
const Vector< BCRec > &  a_bcs 
)

◆ EB_interp_CellCentroid_to_FaceCentroid() [2/3]

void amrex::EB_interp_CellCentroid_to_FaceCentroid ( const MultiFab phi_centroid,
const Array< MultiFab *, AMREX_SPACEDIM > &  phi_faces,
int  scomp,
int  dcomp,
int  nc,
const Geometry geom,
const amrex::Vector< amrex::BCRec > &  a_bcs 
)

◆ EB_interp_CellCentroid_to_FaceCentroid() [3/3]

void amrex::EB_interp_CellCentroid_to_FaceCentroid ( const MultiFab phi_centroid,
const Vector< MultiFab * > &  phi_faces,
int  scomp,
int  dcomp,
int  nc,
const Geometry geom,
const amrex::Vector< amrex::BCRec > &  a_bcs 
)

◆ eb_interp_centroid2facecent_x()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_interp_centroid2facecent_x ( Box const &  ubx,
Array4< Real const > const &  phi,
Array4< Real const > const &  apx,
Array4< Real const > const &  cvol,
Array4< Real const > const &  ccent,
Array4< Real const > const &  fcx,
Array4< Real > const &  edg_x,
int  ncomp,
const Box domain,
const BCRec bc 
)
noexcept

◆ eb_interp_centroid2facecent_y()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_interp_centroid2facecent_y ( Box const &  vbx,
Array4< Real const > const &  phi,
Array4< Real const > const &  apy,
Array4< Real const > const &  cvol,
Array4< Real const > const &  ccent,
Array4< Real const > const &  fcy,
Array4< Real > const &  edg_y,
int  ncomp,
const Box domain,
const BCRec bc 
)
noexcept

◆ eb_interp_centroid2facecent_z()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_interp_centroid2facecent_z ( Box const &  wbx,
Array4< Real const > const &  phi,
Array4< Real const > const &  apz,
Array4< Real const > const &  cvol,
Array4< Real const > const &  ccent,
Array4< Real const > const &  fcz,
Array4< Real > const &  phi_z,
int  ncomp,
const Box domain,
const BCRec bc 
)
noexcept

◆ EB_interp_in_quad()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::EB_interp_in_quad ( Real  xint,
Real  yint,
Real  v0,
Real  v1,
Real  v2,
Real  v3,
Real  x0,
Real  y0,
Real  x1,
Real  y1,
Real  x2,
Real  y2,
Real  x3,
Real  y3 
)

◆ eb_rereflux_from_crse()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_rereflux_from_crse ( int  i,
int  j,
int  k,
int  n,
Box const &  bx,
Array4< Real > const &  d,
Array4< Real const > const &  s,
Array4< int const > const &  amrflg,
Array4< EBCellFlag const > const &  ebflg,
Array4< Real const > const &  vfrac 
)

◆ eb_rereflux_to_fine()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_rereflux_to_fine ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  d,
Array4< Real const > const &  s,
Array4< int const > const &  msk,
Dim3  ratio 
)

◆ EB_set_covered() [1/4]

void amrex::EB_set_covered ( MultiFab mf,
int  icomp,
int  ncomp,
const Vector< Real > &  vals 
)

◆ EB_set_covered() [2/4]

void amrex::EB_set_covered ( MultiFab mf,
int  icomp,
int  ncomp,
int  ngrow,
const Vector< Real > &  a_vals 
)

◆ EB_set_covered() [3/4]

void amrex::EB_set_covered ( MultiFab mf,
int  icomp,
int  ncomp,
int  ngrow,
Real  val 
)

◆ EB_set_covered() [4/4]

void amrex::EB_set_covered ( MultiFab mf,
Real  val 
)

◆ EB_set_covered_faces() [1/2]

void amrex::EB_set_covered_faces ( const Array< MultiFab *, AMREX_SPACEDIM > &  umac,
const int  scomp,
const int  ncomp,
const Vector< Real > &  a_vals 
)

◆ EB_set_covered_faces() [2/2]

void amrex::EB_set_covered_faces ( const Array< MultiFab *, AMREX_SPACEDIM > &  umac,
Real  val 
)

◆ eb_set_covered_nodes() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_set_covered_nodes ( int  i,
int  j,
int  k,
int  n,
int  icomp,
Array4< Real > const &  d,
Array4< EBCellFlag const > const &  f,
Real const *AMREX_RESTRICT  v 
)

◆ eb_set_covered_nodes() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::eb_set_covered_nodes ( int  i,
int  j,
int  k,
int  n,
int  icomp,
Array4< Real > const &  d,
Array4< EBCellFlag const > const &  f,
Real  v 
)

◆ elemwiseMax() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::elemwiseMax ( const IntVect p1,
const IntVect p2 
)
noexcept

◆ elemwiseMax() [2/3]

template<class T , class ... Ts>
AMREX_GPU_HOST_DEVICE constexpr AMREX_FORCE_INLINE T amrex::elemwiseMax ( const T &  a,
const T &  b,
const Ts &...  c 
)
constexprnoexcept

◆ elemwiseMax() [3/3]

template<class T >
AMREX_GPU_HOST_DEVICE constexpr AMREX_FORCE_INLINE T amrex::elemwiseMax ( T const &  a,
T const &  b 
)
constexprnoexcept

◆ elemwiseMin() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::elemwiseMin ( const IntVect p1,
const IntVect p2 
)
noexcept

◆ elemwiseMin() [2/3]

template<class T , class ... Ts>
AMREX_GPU_HOST_DEVICE constexpr AMREX_FORCE_INLINE T amrex::elemwiseMin ( const T &  a,
const T &  b,
const Ts &...  c 
)
constexprnoexcept

◆ elemwiseMin() [3/3]

template<class T >
AMREX_GPU_HOST_DEVICE constexpr AMREX_FORCE_INLINE T amrex::elemwiseMin ( T const &  a,
T const &  b 
)
constexprnoexcept

◆ enclosedCells() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::enclosedCells ( const Box b)
noexcept

Returns a Box with CELL based coordinates in all directions that is enclosed by b.

◆ enclosedCells() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::enclosedCells ( const Box b,
Direction  d 
)
noexcept

◆ enclosedCells() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::enclosedCells ( const Box b,
int  dir 
)
noexcept

Returns a Box with CELL based coordinates in direction dir that is enclosed by b. NOTE: equivalent to b.convert(dir,CELL) NOTE: error if b.type(dir) == CELL.

◆ end()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::end ( Box const &  box)
noexcept

◆ enforcePeriodic()

template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE bool amrex::enforcePeriodic ( P &  p,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  plo,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  phi,
amrex::GpuArray< int, AMREX_SPACEDIM > const &  is_per 
)
noexcept

◆ Error() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::Error ( const char *  msg = 0)

◆ Error() [2/2]

void amrex::Error ( const std::string &  msg)

Print out message to cerr and exit via amrex::Abort().

◆ Error_host()

void amrex::Error_host ( const char *  msg)

◆ ErrorStream()

std::ostream & amrex::ErrorStream ( )

◆ ExecOnFinalize()

void amrex::ExecOnFinalize ( PTR_TO_VOID_FUNC  fp)

We maintain a stack of functions that need to be called in Finalize(). The functions are called in LIFO order. The idea here is to allow classes to clean up any "global" state that they maintain when we're exiting from AMReX.

◆ ExecOnInitialize()

void amrex::ExecOnInitialize ( PTR_TO_VOID_FUNC  fp)

◆ exp()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::exp ( const GpuComplex< T > &  a_z)
noexcept

Complex expotential function.

◆ fab_filcc()

void amrex::fab_filcc ( Box const &  bx,
Array4< Real > const &  qn,
int  ncomp,
Box const &  domain,
Real const *  ,
Real const *  ,
BCRec const *  bcn 
)

◆ fab_filnd()

void amrex::fab_filnd ( Box const &  bx,
Array4< Real > const &  qn,
int  ncomp,
Box const &  domain,
Real const *  ,
Real const *  ,
BCRec const *  bcn 
)

◆ FabToBlueprintFields()

void amrex::FabToBlueprintFields ( const FArrayBox fab,
const Vector< std::string > &  varnames,
Node &  res 
)

◆ FabToBlueprintTopology()

void amrex::FabToBlueprintTopology ( const Geometry geom,
const FArrayBox fab,
Node &  res 
)

◆ face_linear_interp_x()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::face_linear_interp_x ( int  i,
int  j,
int  k,
int  n,
Array4< T > const &  fine,
Array4< T const > const &  crse,
IntVect const &  ratio 
)
noexcept

◆ face_linear_interp_y()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::face_linear_interp_y ( int  i,
int  j,
int  k,
int  n,
Array4< T > const &  fine,
Array4< T const > const &  crse,
IntVect const &  ratio 
)
noexcept

◆ face_linear_interp_z()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::face_linear_interp_z ( int  i,
int  j,
int  k,
int  n,
Array4< T > const &  fine,
Array4< T const > const &  crse,
IntVect const &  ratio 
)
noexcept

◆ facediv_face_interp()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::facediv_face_interp ( int  ci,
int  cj,
int  ck,
int  nc,
int  nf,
int  idir,
Array4< T const > const &  crse,
Array4< T > const &  fine,
Array4< const int > const &  mask,
IntVect const &  ratio 
)
noexcept

◆ facediv_int()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::facediv_int ( int  ci,
int  cj,
int  ck,
int  nf,
GpuArray< Array4< T >, AMREX_SPACEDIM > const &  fine,
IntVect const &  ratio,
GpuArray< Real, AMREX_SPACEDIM > const &  cellSize 
)
noexcept

◆ FileExists()

bool amrex::FileExists ( const std::string &  filename)

Check if a file already exists. Return true if the filename is an existing file, directory, or link. For links, this operates on the link and not what the link points to.

◆ FileOpenFailed()

void amrex::FileOpenFailed ( const std::string &  dir)

Output a message and abort when couldn't open the file.

◆ FileSize()

long amrex::FileSize ( const std::string &  filename)

◆ fill()

template<typename STRUCT , typename F , typename std::enable_if<(sizeof(STRUCT)<=36 *8) &&AMREX_IS_TRIVIALLY_COPYABLE(STRUCT) &&std::is_trivially_destructible< STRUCT >::value, int >::type FOO = 0>
void amrex::fill ( BaseFab< STRUCT > &  aos_fab,
F &&  f 
)

◆ FillDomainBoundary()

void amrex::FillDomainBoundary ( MultiFab phi,
const Geometry geom,
const Vector< BCRec > &  bc 
)

◆ FillImpFunc()

template<typename G >
void amrex::FillImpFunc ( MultiFab mf,
G const &  gshop,
Geometry const &  geom 
)

◆ FillNull() [1/2]

template<class T >
void amrex::FillNull ( Vector< std::unique_ptr< T > > &  a)

◆ FillNull() [2/2]

template<class T >
void amrex::FillNull ( Vector< T * > &  a)

◆ FillPatchInterp() [1/3]

template<typename MF , typename Interp >
std::enable_if_t<IsFabArray<MF>::value && !std::is_same<Interp,MFInterpolater>::value> amrex::FillPatchInterp ( MF &  mf_fine_patch,
int  fcomp,
MF const &  mf_crse_patch,
int  ccomp,
int  ncomp,
IntVect const &  ng,
const Geometry cgeom,
const Geometry fgeom,
Box const &  dest_domain,
const IntVect ratio,
Interp *  mapper,
const Vector< BCRec > &  bcs,
int  bcscomp 
)

◆ FillPatchInterp() [2/3]

template<typename MF >
std::enable_if_t<IsFabArray<MF>::value> amrex::FillPatchInterp ( MF &  mf_fine_patch,
int  fcomp,
MF const &  mf_crse_patch,
int  ccomp,
int  ncomp,
IntVect const &  ng,
const Geometry cgeom,
const Geometry fgeom,
Box const &  dest_domain,
const IntVect ratio,
InterpBase mapper,
const Vector< BCRec > &  bcs,
int  bcscomp 
)

◆ FillPatchInterp() [3/3]

void amrex::FillPatchInterp ( MultiFab mf_fine_patch,
int  fcomp,
MultiFab const &  mf_crse_patch,
int  ccomp,
int  ncomp,
IntVect const &  ng,
const Geometry cgeom,
const Geometry fgeom,
Box const &  dest_domain,
const IntVect ratio,
MFInterpolater mapper,
const Vector< BCRec > &  bcs,
int  bcscomp 
)

◆ FillPatchSingleLevel() [1/2]

template<typename MF , typename BC >
std::enable_if_t< IsFabArray< MF >::value > amrex::FillPatchSingleLevel ( MF &  mf,
IntVect const &  nghost,
Real  time,
const Vector< MF * > &  smf,
const Vector< Real > &  stime,
int  scomp,
int  dcomp,
int  ncomp,
const Geometry geom,
BC &  physbcf,
int  bcfcomp 
)

◆ FillPatchSingleLevel() [2/2]

template<typename MF , typename BC >
std::enable_if_t< IsFabArray< MF >::value > amrex::FillPatchSingleLevel ( MF &  mf,
Real  time,
const Vector< MF * > &  smf,
const Vector< Real > &  stime,
int  scomp,
int  dcomp,
int  ncomp,
const Geometry geom,
BC &  physbcf,
int  bcfcomp 
)

◆ FillPatchTwoLevels() [1/4]

template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > amrex::FillPatchTwoLevels ( Array< MF *, AMREX_SPACEDIM > const &  mf,
IntVect const &  nghost,
Real  time,
const Vector< Array< MF *, AMREX_SPACEDIM > > &  cmf,
const Vector< Real > &  ct,
const Vector< Array< MF *, AMREX_SPACEDIM > > &  fmf,
const Vector< Real > &  ft,
int  scomp,
int  dcomp,
int  ncomp,
const Geometry cgeom,
const Geometry fgeom,
Array< BC, AMREX_SPACEDIM > &  cbc,
int  cbccomp,
Array< BC, AMREX_SPACEDIM > &  fbc,
int  fbccomp,
const IntVect ratio,
Interp *  mapper,
const Array< Vector< BCRec >, AMREX_SPACEDIM > &  bcs,
int  bcscomp,
const PreInterpHook &  pre_interp = {},
const PostInterpHook &  post_interp = {} 
)

◆ FillPatchTwoLevels() [2/4]

template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > amrex::FillPatchTwoLevels ( Array< MF *, AMREX_SPACEDIM > const &  mf,
Real  time,
const Vector< Array< MF *, AMREX_SPACEDIM > > &  cmf,
const Vector< Real > &  ct,
const Vector< Array< MF *, AMREX_SPACEDIM > > &  fmf,
const Vector< Real > &  ft,
int  scomp,
int  dcomp,
int  ncomp,
const Geometry cgeom,
const Geometry fgeom,
Array< BC, AMREX_SPACEDIM > &  cbc,
int  cbccomp,
Array< BC, AMREX_SPACEDIM > &  fbc,
int  fbccomp,
const IntVect ratio,
Interp *  mapper,
const Array< Vector< BCRec >, AMREX_SPACEDIM > &  bcs,
int  bcscomp,
const PreInterpHook &  pre_interp = {},
const PostInterpHook &  post_interp = {} 
)

◆ FillPatchTwoLevels() [3/4]

template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > amrex::FillPatchTwoLevels ( MF &  mf,
IntVect const &  nghost,
Real  time,
const Vector< MF * > &  cmf,
const Vector< Real > &  ct,
const Vector< MF * > &  fmf,
const Vector< Real > &  ft,
int  scomp,
int  dcomp,
int  ncomp,
const Geometry cgeom,
const Geometry fgeom,
BC &  cbc,
int  cbccomp,
BC &  fbc,
int  fbccomp,
const IntVect ratio,
Interp *  mapper,
const Vector< BCRec > &  bcs,
int  bcscomp,
const PreInterpHook &  pre_interp = {},
const PostInterpHook &  post_interp = {} 
)

◆ FillPatchTwoLevels() [4/4]

template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > amrex::FillPatchTwoLevels ( MF &  mf,
Real  time,
const Vector< MF * > &  cmf,
const Vector< Real > &  ct,
const Vector< MF * > &  fmf,
const Vector< Real > &  ft,
int  scomp,
int  dcomp,
int  ncomp,
const Geometry cgeom,
const Geometry fgeom,
BC &  cbc,
int  cbccomp,
BC &  fbc,
int  fbccomp,
const IntVect ratio,
Interp *  mapper,
const Vector< BCRec > &  bcs,
int  bcscomp,
const PreInterpHook &  pre_interp = {},
const PostInterpHook &  post_interp = {} 
)

◆ filterParticles() [1/4]

template<typename DstTile , typename SrcTile , typename Index , typename N , std::enable_if_t< std::is_integral< Index >::value, int > foo = 0>
Index amrex::filterParticles ( DstTile &  dst,
const SrcTile &  src,
const Index *  mask 
)
noexcept

Conditionally copy particles from src to dst based on the value of mask.

Template Parameters
DstTilethe dst particle tile type
SrcTilethe src particle tile type
Indexthe index type, e.g. unsigned int
Parameters
dstthe destination tile
srcthe source tile
maskpointer to the mask - 1 means copy, 0 means don't copy

◆ filterParticles() [2/4]

template<typename DstTile , typename SrcTile , typename Index , typename N , std::enable_if_t< std::is_integral< Index >::value, int > foo = 0>
Index amrex::filterParticles ( DstTile &  dst,
const SrcTile &  src,
const Index *  mask,
Index  src_start,
Index  dst_start,
n 
)
noexcept

Conditionally copy particles from src to dst based on the value of mask. This version conditionally copies n particles starting at index src_start, writing the result starting at dst_start.

Template Parameters
DstTilethe dst particle tile type
SrcTilethe src particle tile type
Indexthe index type, e.g. unsigned int
Parameters
dstthe destination tile
srcthe source tile
maskpointer to the mask - 1 means copy, 0 means don't copy
src_startthe offset at which to start reading particles from src
dst_startthe offset at which to start writing particles to dst
nthe number of particles to apply the operation to

◆ filterParticles() [3/4]

template<typename DstTile , typename SrcTile , typename Pred >
int amrex::filterParticles ( DstTile &  dst,
const SrcTile &  src,
Pred &&  p 
)
noexcept

Conditionally copy particles from src to dst based on a predicate.

Template Parameters
DstTilethe dst particle tile type
SrcTilethe src particle tile type
Preda function object
Parameters
dstthe destination tile
srcthe source tile
ppredicate function - particles will be copied if p returns true

◆ filterParticles() [4/4]

template<typename DstTile , typename SrcTile , typename Pred , typename Index , typename N >
auto amrex::filterParticles ( DstTile &  dst,
const SrcTile &  src,
Pred &&  p,
Index  src_start,
Index  dst_start,
n 
) -> decltype(Index(particle_detail::call_f(p, typename SrcTile::ConstParticleTileDataType(), int
noexcept

Conditionally copy particles from src to dst based on a predicate. This version conditionally copies n particles starting at index src_start, writing the result starting at dst_start.

Template Parameters
DstTilethe dst particle tile type
SrcTilethe src particle tile type
Preda function object
Parameters
dstthe destination tile
srcthe source tile
ppredicate function - particles will be copied if p returns true
src_startthe offset at which to start reading particles from src
dst_startthe offset at which to start writing particles to dst
nthe number of particles to apply the operation to

◆ Finalize() [1/2]

void amrex::Finalize ( )

◆ Finalize() [2/2]

void amrex::Finalize ( amrex::AMReX pamrex)

◆ finalize_table()

static void amrex::finalize_table ( const std::string &  pfx,
const ParmParse::Table table 
)
static

◆ FindCut()

static int amrex::FindCut ( const int hist,
int  lo,
int  hi,
CutStatus &  status 
)
static

◆ FixCoarseBoxSize()

amrex::Box amrex::FixCoarseBoxSize ( const Box fineBox,
int  rr 
)

◆ FixUpPhysCorners()

static void amrex::FixUpPhysCorners ( FArrayBox fab,
AmrLevel TheLevel,
int  state_indx,
Real  time,
int  scomp,
int  dcomp,
int  ncomp 
)
static

◆ fluxreg_fineadd()

AMREX_GPU_HOST_DEVICE void amrex::fluxreg_fineadd ( Box const &  bx,
Array4< Real > const &  reg,
const int  rcomp,
Array4< Real const > const &  flx,
const int  fcomp,
const int  ncomp,
const int  dir,
Dim3 const &  ratio,
const Real  mult 
)
inlinenoexcept

Add fine grid flux to flux register. Flux array is a fine grid edge based object, Register is a coarse grid edge based object. It is assumed that the coarsened flux region contains the register region.

Parameters
bx
reg
rcomp
flx
fcomp
ncomp
ratio
mult
bx
reg
rcomp
flx
fcomp
ncomp
dir
ratio
mult

◆ fluxreg_fineareaadd()

AMREX_GPU_HOST_DEVICE void amrex::fluxreg_fineareaadd ( Box const &  bx,
Array4< Real > const &  reg,
const int  rcomp,
Array4< Real const > const &  area,
Array4< Real const > const &  flx,
const int  fcomp,
const int  ncomp,
const int  dir,
Dim3 const &  ratio,
const Real  mult 
)
inlinenoexcept

Add fine grid flux times area to flux register. Flux array is a fine grid edge based object, Register is a coarse grid edge based object. It is assumed that the coarsened flux region contains the register region.

Parameters
bx
reg
rcomp
area
flx
fcomp
ncomp
ratio
mult
bx
reg
rcomp
area
flx
fcomp
ncomp
dir
ratio
mult

◆ fluxreg_reflux()

AMREX_GPU_HOST_DEVICE void amrex::fluxreg_reflux ( Box const &  bx,
Array4< Real > const &  s,
const int  scomp,
Array4< Real const > const &  f,
Array4< Real const > const &  v,
const int  ncomp,
const Real  mult,
const Orientation  face 
)
inlinenoexcept

◆ For() [1/14]

template<typename L >
void amrex::For ( Box const &  box,
L &&  f 
)
noexcept

◆ For() [2/14]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::For ( Box const &  box,
ncomp,
L &&  f 
)
noexcept

◆ For() [3/14]

template<typename L1 , typename L2 , typename L3 >
void amrex::For ( Box const &  box1,
Box const &  box2,
Box const &  box3,
L1 &&  f1,
L2 &&  f2,
L3 &&  f3 
)
noexcept

◆ For() [4/14]

template<typename L1 , typename L2 >
void amrex::For ( Box const &  box1,
Box const &  box2,
L1 &&  f1,
L2 &&  f2 
)
noexcept

◆ For() [5/14]

template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void amrex::For ( Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2 
)
noexcept

◆ For() [6/14]

template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void amrex::For ( Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2,
Box const &  box3,
T3  ncomp3,
L3 &&  f3 
)
noexcept

◆ For() [7/14]

template<typename L >
void amrex::For ( Gpu::KernelInfo const &  info,
Box const &  box,
L &&  f 
)
noexcept

◆ For() [8/14]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::For ( Gpu::KernelInfo const &  info,
Box const &  box,
ncomp,
L &&  f 
)
noexcept

◆ For() [9/14]

template<typename L1 , typename L2 , typename L3 >
void amrex::For ( Gpu::KernelInfo const &  info,
Box const &  box1,
Box const &  box2,
Box const &  box3,
L1 &&  f1,
L2 &&  f2,
L3 &&  f3 
)
noexcept

◆ For() [10/14]

template<typename L1 , typename L2 >
void amrex::For ( Gpu::KernelInfo const &  info,
Box const &  box1,
Box const &  box2,
L1 &&  f1,
L2 &&  f2 
)
noexcept

◆ For() [11/14]

template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void amrex::For ( Gpu::KernelInfo const &  info,
Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2 
)
noexcept

◆ For() [12/14]

template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void amrex::For ( Gpu::KernelInfo const &  info,
Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2,
Box const &  box3,
T3  ncomp3,
L3 &&  f3 
)
noexcept

◆ For() [13/14]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::For ( Gpu::KernelInfo const &  info,
n,
L &&  f 
)
noexcept

◆ For() [14/14]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::For ( n,
L &&  f 
)
noexcept

◆ ForwardAsTuple()

template<typename... Ts>
constexpr AMREX_GPU_HOST_DEVICE GpuTuple<Ts&&...> amrex::ForwardAsTuple ( Ts &&...  args)
constexprnoexcept

◆ GccPlacater()

void amrex::GccPlacater ( )
inline

◆ GccPlacaterMF()

void amrex::GccPlacaterMF ( )
inline

◆ get() [1/3]

template<std::size_t I, typename... Ts>
constexpr AMREX_GPU_HOST_DEVICE GpuTupleElement<I, GpuTuple<Ts...> >::type&& amrex::get ( GpuTuple< Ts... > &&  tup)
constexprnoexcept

◆ get() [2/3]

template<std::size_t I, typename... Ts>
constexpr AMREX_GPU_HOST_DEVICE GpuTupleElement<I, GpuTuple<Ts...> >::type& amrex::get ( GpuTuple< Ts... > &  tup)
constexprnoexcept

◆ get() [3/3]

template<std::size_t I, typename... Ts>
constexpr AMREX_GPU_HOST_DEVICE GpuTupleElement<I, GpuTuple<Ts...> >::type const& amrex::get ( GpuTuple< Ts... > const &  tup)
constexprnoexcept

◆ get_command()

std::string amrex::get_command ( )

◆ get_command_argument()

std::string amrex::get_command_argument ( int  number)

Get command line arguments. The executable name is the zero-th argument. Return empty string if there are not that many arguments. std::string.

◆ get_entries_under_prefix()

static void amrex::get_entries_under_prefix ( std::vector< std::string > &  found_entries,
const ParmParse::Table table,
const std::string &  prefix,
const bool  only_unused = false,
const bool  add_values = false 
)
static

◆ get_slice_data()

std::unique_ptr< MultiFab > amrex::get_slice_data ( int  dir,
Real  coord,
const MultiFab cc,
const Geometry geom,
int  fstart,
int  ncomp,
bool  interpolate = false 
)

Extract a slice from the given cell-centered MultiFab at coordinate "coord" along direction "dir".

◆ GetArrOfConstPtrs() [1/3]

template<class T >
std::array<T const*,AMREX_SPACEDIM> amrex::GetArrOfConstPtrs ( const std::array< std::unique_ptr< T >, AMREX_SPACEDIM > &  a)
noexcept

◆ GetArrOfConstPtrs() [2/3]

template<class T >
std::array<T const*,AMREX_SPACEDIM> amrex::GetArrOfConstPtrs ( const std::array< T *, AMREX_SPACEDIM > &  a)
noexcept

◆ GetArrOfConstPtrs() [3/3]

template<class T >
std::array<T const*,AMREX_SPACEDIM> amrex::GetArrOfConstPtrs ( const std::array< T, AMREX_SPACEDIM > &  a)
noexcept

◆ GetArrOfPtrs() [1/2]

template<class T >
std::array<T*,AMREX_SPACEDIM> amrex::GetArrOfPtrs ( const std::array< std::unique_ptr< T >, AMREX_SPACEDIM > &  a)
noexcept

◆ GetArrOfPtrs() [2/2]

template<class T , typename = typename T::FABType>
std::array<T*,AMREX_SPACEDIM> amrex::GetArrOfPtrs ( std::array< T, AMREX_SPACEDIM > &  a)
noexcept

◆ GetBndryCells()

BoxList amrex::GetBndryCells ( const BoxArray ba,
int  ngrow 
)

Find the ghost cells of a given BoxArray.

◆ getCell()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::getCell ( Box const *  boxes,
int  nboxes,
Long  icell 
)
noexcept

◆ getEBCellFlagFab()

const EBCellFlagFab & amrex::getEBCellFlagFab ( const FArrayBox fab)

◆ getIndexBounds() [1/3]

AMREX_FORCE_INLINE Box amrex::getIndexBounds ( Box const &  b1)
noexcept

◆ getIndexBounds() [2/3]

AMREX_FORCE_INLINE Box amrex::getIndexBounds ( Box const &  b1,
Box const &  b2 
)
noexcept

◆ getIndexBounds() [3/3]

template<class T , class ... Ts>
AMREX_FORCE_INLINE Box amrex::getIndexBounds ( T const &  b1,
T const &  b2,
Ts const &...  b3 
)
noexcept

◆ getParticleCell()

template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::getParticleCell ( P const &  p,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  plo,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  dxi,
const Box domain 
)
noexcept

◆ getParticleGrid()

template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::getParticleGrid ( P const &  p,
amrex::Array4< int > const &  mask,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  plo,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  dxi,
const Box domain 
)
noexcept

◆ getRandState()

AMREX_FORCE_INLINE randState_t* amrex::getRandState ( )

◆ getTileIndex()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::getTileIndex ( const IntVect iv,
const Box box,
const bool  a_do_tiling,
const IntVect a_tile_size,
Box tbx 
)

◆ GetVecOfArrOfConstPtrs() [1/2]

template<class T >
Vector<std::array<T const*,AMREX_SPACEDIM> > amrex::GetVecOfArrOfConstPtrs ( const Vector< std::array< std::unique_ptr< T >, AMREX_SPACEDIM > > &  a)

◆ GetVecOfArrOfConstPtrs() [2/2]

template<class T , typename std::enable_if< IsFabArray< T >::value||IsBaseFab< T >::value, int >::type = 0>
Vector<std::array<T const*,AMREX_SPACEDIM> > amrex::GetVecOfArrOfConstPtrs ( const Vector< std::array< T, AMREX_SPACEDIM > > &  a)

◆ GetVecOfArrOfPtrs() [1/2]

template<class T >
Vector<std::array<T*,AMREX_SPACEDIM> > amrex::GetVecOfArrOfPtrs ( const Vector< std::array< std::unique_ptr< T >, AMREX_SPACEDIM > > &  a)

◆ GetVecOfArrOfPtrs() [2/2]

template<class T , typename std::enable_if< IsFabArray< T >::value||IsBaseFab< T >::value, int >::type = 0>
Vector<std::array<T*, AMREX_SPACEDIM> > amrex::GetVecOfArrOfPtrs ( Vector< std::array< T, AMREX_SPACEDIM > > &  a)

◆ GetVecOfArrOfPtrsConst()

template<class T >
Vector<std::array<T const*,AMREX_SPACEDIM> > amrex::GetVecOfArrOfPtrsConst ( const Vector< std::array< std::unique_ptr< T >, AMREX_SPACEDIM > > &  a)

◆ GetVecOfConstPtrs() [1/3]

template<class T >
Vector<const T*> amrex::GetVecOfConstPtrs ( const Vector< std::unique_ptr< T > > &  a)

◆ GetVecOfConstPtrs() [2/3]

template<class T , typename = typename T::FABType>
Vector<const T*> amrex::GetVecOfConstPtrs ( const Vector< T * > &  a)

◆ GetVecOfConstPtrs() [3/3]

template<class T , typename = typename T::FABType>
Vector<const T*> amrex::GetVecOfConstPtrs ( const Vector< T > &  a)

◆ GetVecOfPtrs() [1/2]

template<class T >
Vector<T*> amrex::GetVecOfPtrs ( const Vector< std::unique_ptr< T > > &  a)

◆ GetVecOfPtrs() [2/2]

template<class T , typename = typename T::FABType>
Vector<T*> amrex::GetVecOfPtrs ( Vector< T > &  a)

◆ GetVecOfVecOfPtrs()

template<class T >
Vector<Vector<T*> > amrex::GetVecOfVecOfPtrs ( const Vector< Vector< std::unique_ptr< T > > > &  a)

◆ gpuGetErrorString()

const char* amrex::gpuGetErrorString ( gpuError_t  error)
inline

◆ gpuGetLastError()

gpuError_t amrex::gpuGetLastError ( )
inline

◆ grad_eb_of_phi_on_centroids() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_eb_of_phi_on_centroids ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Real &  nrmx,
Real &  nrmy,
bool  is_eb_inhomog 
)

◆ grad_eb_of_phi_on_centroids() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_eb_of_phi_on_centroids ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Real &  nrmx,
Real &  nrmy,
Real &  nrmz,
bool  is_eb_inhomog 
)

◆ grad_eb_of_phi_on_centroids_extdir() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_eb_of_phi_on_centroids_extdir ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Array4< Real const > const &  vfrac,
Real &  nrmx,
Real &  nrmy,
bool  is_eb_inhomog,
const bool  on_x_face,
const int  domlo_x,
const int  domhi_x,
const bool  on_y_face,
const int  domlo_y,
const int  domhi_y 
)

◆ grad_eb_of_phi_on_centroids_extdir() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_eb_of_phi_on_centroids_extdir ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Array4< Real const > const &  vfrac,
Real &  nrmx,
Real &  nrmy,
Real &  nrmz,
bool  is_eb_inhomog,
const bool  on_x_face,
const int  domlo_x,
const int  domhi_x,
const bool  on_y_face,
const int  domlo_y,
const int  domhi_y,
const bool  on_z_face,
const int  domlo_z,
const int  domhi_z 
)

◆ grad_x_of_phi_on_centroids() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_x_of_phi_on_centroids ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Real &  yloc_on_xface,
bool  is_eb_dirichlet,
bool  is_eb_inhomog 
)

◆ grad_x_of_phi_on_centroids() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_x_of_phi_on_centroids ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Real &  yloc_on_xface,
Real &  zloc_on_xface,
bool  is_eb_dirichlet,
bool  is_eb_inhomog 
)

◆ grad_x_of_phi_on_centroids_extdir() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_x_of_phi_on_centroids_extdir ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Array4< Real const > const &  vfrac,
Real &  yloc_on_xface,
bool  is_eb_dirichlet,
bool  is_eb_inhomog,
const bool  on_x_face,
const int  domlo_x,
const int  domhi_x,
const bool  on_y_face,
const int  domlo_y,
const int  domhi_y 
)

◆ grad_x_of_phi_on_centroids_extdir() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_x_of_phi_on_centroids_extdir ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Array4< Real const > const &  vfrac,
Real &  yloc_on_xface,
Real &  zloc_on_xface,
bool  is_eb_dirichlet,
bool  is_eb_inhomog,
const bool  on_x_face,
const int  domlo_x,
const int  domhi_x,
const bool  on_y_face,
const int  domlo_y,
const int  domhi_y,
const bool  on_z_face,
const int  domlo_z,
const int  domhi_z 
)

◆ grad_y_of_phi_on_centroids() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_y_of_phi_on_centroids ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Real &  xloc_on_yface,
bool  is_eb_dirichlet,
bool  is_eb_inhomog 
)

◆ grad_y_of_phi_on_centroids() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_y_of_phi_on_centroids ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Real &  xloc_on_yface,
Real &  zloc_on_yface,
bool  is_eb_dirichlet,
bool  is_eb_inhomog 
)

◆ grad_y_of_phi_on_centroids_extdir() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_y_of_phi_on_centroids_extdir ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Array4< Real const > const &  vfrac,
Real &  xloc_on_yface,
bool  is_eb_dirichlet,
bool  is_eb_inhomog,
const bool  on_x_face,
const int  domlo_x,
const int  domhi_x,
const bool  on_y_face,
const int  domlo_y,
const int  domhi_y 
)

◆ grad_y_of_phi_on_centroids_extdir() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_y_of_phi_on_centroids_extdir ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Array4< Real const > const &  vfrac,
Real &  xloc_on_yface,
Real &  zloc_on_yface,
bool  is_eb_dirichlet,
bool  is_eb_inhomog,
const bool  on_x_face,
const int  domlo_x,
const int  domhi_x,
const bool  on_y_face,
const int  domlo_y,
const int  domhi_y,
const bool  on_z_face,
const int  domlo_z,
const int  domhi_z 
)

◆ grad_z_of_phi_on_centroids()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_z_of_phi_on_centroids ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Real &  xloc_on_zface,
Real &  yloc_on_zface,
bool  is_eb_dirichlet,
bool  is_eb_inhomog 
)

◆ grad_z_of_phi_on_centroids_extdir()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::grad_z_of_phi_on_centroids_extdir ( int  i,
int  j,
int  k,
int  n,
Array4< Real const > const &  phi,
Array4< Real const > const &  phieb,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  ccent,
Array4< Real const > const &  bcent,
Array4< Real const > const &  vfrac,
Real &  xloc_on_zface,
Real &  yloc_on_zface,
bool  is_eb_dirichlet,
bool  is_eb_inhomog,
const bool  on_x_face,
const int  domlo_x,
const int  domhi_x,
const bool  on_y_face,
const int  domlo_y,
const int  domhi_y,
const bool  on_z_face,
const int  domlo_z,
const int  domhi_z 
)

◆ GraphTopPct()

void amrex::GraphTopPct ( const std::map< std::string, BLProfiler::ProfStats > &  mProfStats,
const Vector< Vector< BLProfStats::FuncStat > > &  funcStats,
const Vector< std::string > &  fNames,
Real  runTime,
int  dataNProcs,
Real  gPercent 
)

◆ grow() [1/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::grow ( const Box b,
const IntVect v 
)
noexcept

Grow Box in each direction by specified amount.

◆ grow() [2/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::grow ( const Box b,
Direction  d,
int  n_cell 
)
noexcept

◆ grow() [3/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::grow ( const Box b,
int  i 
)
noexcept

Grow Box in all directions by given amount.

NOTE: n_cell negative shrinks the Box by that number of cells.

◆ grow() [4/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::grow ( const Box b,
int  idir,
int  n_cell 
)
noexcept

Grow Box in direction idir be n_cell cells.

◆ growHi() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::growHi ( const Box b,
Direction  d,
int  n_cell 
)
noexcept

◆ growHi() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::growHi ( const Box b,
int  idir,
int  n_cell 
)
noexcept

◆ growLo() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::growLo ( const Box b,
Direction  d,
int  n_cell 
)
noexcept

◆ growLo() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::growLo ( const Box b,
int  idir,
int  n_cell 
)
noexcept

◆ habec_cols()

template<typename Int >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::habec_cols ( GpuArray< Int, 2 *AMREX_SPACEDIM+1 > &  sten,
int  i,
int  j,
int  k,
Array4< Int const > const &  cell_id 
)

◆ habec_ijmat()

template<typename Int >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::habec_ijmat ( GpuArray< Real, 2 *AMREX_SPACEDIM+1 > &  sten,
Array4< Int > const &  ncols,
Array4< Real > const &  diaginv,
int  i,
int  j,
int  k,
Array4< Int const > const &  cell_id,
Real  sa,
Array4< Real const > const &  a,
Real  sb,
GpuArray< Real, AMREX_SPACEDIM > const &  dx,
GpuArray< Array4< Real const >, AMREX_SPACEDIM > const &  b,
GpuArray< int, AMREX_SPACEDIM *2 > const &  bctype,
GpuArray< Real, AMREX_SPACEDIM *2 > const &  bcl,
int  bho,
Array4< int const > const &  osm 
)

◆ habec_mat()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::habec_mat ( GpuArray< Real, 2 *AMREX_SPACEDIM+1 > &  sten,
int  i,
int  j,
int  k,
Dim3 const &  boxlo,
Dim3 const &  boxhi,
Real  sa,
Array4< Real const > const &  a,
Real  sb,
GpuArray< Real, AMREX_SPACEDIM > const &  dx,
GpuArray< Array4< Real const >, AMREX_SPACEDIM > const &  b,
GpuArray< int, AMREX_SPACEDIM *2 > const &  bctype,
GpuArray< Real, AMREX_SPACEDIM *2 > const &  bcl,
int  bho,
GpuArray< Array4< int const >, AMREX_SPACEDIM *2 > const &  msk,
Array4< Real > const &  diaginv 
)

◆ hash_combine()

template<typename T >
void amrex::hash_combine ( uint64_t &  seed,
const T &  val 
)
noexcept

◆ hash_vector()

template<typename T >
uint64_t amrex::hash_vector ( const Vector< T > &  vec,
uint64_t  seed = 0xDEADBEEFDEADBEEF 
)
noexcept

◆ HasPhysBndry()

static bool amrex::HasPhysBndry ( const Box b,
const Box dmn,
const Geometry geom 
)
static

◆ HostDeviceFor() [1/14]

template<typename L >
void amrex::HostDeviceFor ( Box const &  box,
L &&  f 
)
noexcept

◆ HostDeviceFor() [2/14]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::HostDeviceFor ( Box const &  box,
ncomp,
L &&  f 
)
noexcept

◆ HostDeviceFor() [3/14]

template<typename L1 , typename L2 , typename L3 >
void amrex::HostDeviceFor ( Box const &  box1,
Box const &  box2,
Box const &  box3,
L1 &&  f1,
L2 &&  f2,
L3 &&  f3 
)
noexcept

◆ HostDeviceFor() [4/14]

template<typename L1 , typename L2 >
void amrex::HostDeviceFor ( Box const &  box1,
Box const &  box2,
L1 &&  f1,
L2 &&  f2 
)
noexcept

◆ HostDeviceFor() [5/14]

template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void amrex::HostDeviceFor ( Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2 
)
noexcept

◆ HostDeviceFor() [6/14]

template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void amrex::HostDeviceFor ( Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2,
Box const &  box3,
T3  ncomp3,
L3 &&  f3 
)
noexcept

◆ HostDeviceFor() [7/14]

template<typename L >
void amrex::HostDeviceFor ( Gpu::KernelInfo const &  info,
Box const &  box,
L &&  f 
)
noexcept

◆ HostDeviceFor() [8/14]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::HostDeviceFor ( Gpu::KernelInfo const &  info,
Box const &  box,
ncomp,
L &&  f 
)
noexcept

◆ HostDeviceFor() [9/14]

template<typename L1 , typename L2 , typename L3 >
void amrex::HostDeviceFor ( Gpu::KernelInfo const &  info,
Box const &  box1,
Box const &  box2,
Box const &  box3,
L1 &&  f1,
L2 &&  f2,
L3 &&  f3 
)
noexcept

◆ HostDeviceFor() [10/14]

template<typename L1 , typename L2 >
void amrex::HostDeviceFor ( Gpu::KernelInfo const &  info,
Box const &  box1,
Box const &  box2,
L1 &&  f1,
L2 &&  f2 
)
noexcept

◆ HostDeviceFor() [11/14]

template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void amrex::HostDeviceFor ( Gpu::KernelInfo const &  info,
Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2 
)
noexcept

◆ HostDeviceFor() [12/14]

template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void amrex::HostDeviceFor ( Gpu::KernelInfo const &  info,
Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2,
Box const &  box3,
T3  ncomp3,
L3 &&  f3 
)
noexcept

◆ HostDeviceFor() [13/14]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::HostDeviceFor ( Gpu::KernelInfo const &  info,
n,
L &&  f 
)
noexcept

◆ HostDeviceFor() [14/14]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::HostDeviceFor ( n,
L &&  f 
)
noexcept

◆ HostDeviceParallelFor() [1/22]

template<typename L >
void amrex::HostDeviceParallelFor ( Box const &  box,
L &&  f 
)
noexcept

◆ HostDeviceParallelFor() [2/22]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::HostDeviceParallelFor ( Box const &  box,
ncomp,
L &&  f 
)
noexcept

◆ HostDeviceParallelFor() [3/22]

template<typename L1 , typename L2 , typename L3 >
void amrex::HostDeviceParallelFor ( Box const &  box1,
Box const &  box2,
Box const &  box3,
L1 &&  f1,
L2 &&  f2,
L3 &&  f3 
)
noexcept

◆ HostDeviceParallelFor() [4/22]

template<typename L1 , typename L2 >
void amrex::HostDeviceParallelFor ( Box const &  box1,
Box const &  box2,
L1 &&  f1,
L2 &&  f2 
)
noexcept

◆ HostDeviceParallelFor() [5/22]

template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void amrex::HostDeviceParallelFor ( Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2 
)
noexcept

◆ HostDeviceParallelFor() [6/22]

template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void amrex::HostDeviceParallelFor ( Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2,
Box const &  box3,
T3  ncomp3,
L3 &&  f3 
)
noexcept

◆ HostDeviceParallelFor() [7/22]

template<typename L >
void amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box,
L &&  f 
)
noexcept

◆ HostDeviceParallelFor() [8/22]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box,
ncomp,
L &&  f 
)
noexcept

◆ HostDeviceParallelFor() [9/22]

template<typename L1 , typename L2 , typename L3 >
void amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box1,
Box const &  box2,
Box const &  box3,
L1 &&  f1,
L2 &&  f2,
L3 &&  f3 
)
noexcept

◆ HostDeviceParallelFor() [10/22]

template<typename L1 , typename L2 >
void amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box1,
Box const &  box2,
L1 &&  f1,
L2 &&  f2 
)
noexcept

◆ HostDeviceParallelFor() [11/22]

template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2 
)
noexcept

◆ HostDeviceParallelFor() [12/22]

template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2,
Box const &  box3,
T3  ncomp3,
L3 &&  f3 
)
noexcept

◆ HostDeviceParallelFor() [13/22]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  ,
n,
L &&  f 
)
noexcept

◆ HostDeviceParallelFor() [14/22]

template<typename L >
std::enable_if_t<MaybeHostDeviceRunnable<L>::value> amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  info,
Box const &  box,
L &&  f 
)
noexcept

◆ HostDeviceParallelFor() [15/22]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t<MaybeHostDeviceRunnable<L>::value> amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  info,
Box const &  box,
ncomp,
L &&  f 
)
noexcept

◆ HostDeviceParallelFor() [16/22]

template<typename L1 , typename L2 , typename L3 >
std::enable_if_t<MaybeHostDeviceRunnable<L1>::value && MaybeHostDeviceRunnable<L2>::value && MaybeHostDeviceRunnable<L3>::value> amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  info,
Box const &  box1,
Box const &  box2,
Box const &  box3,
L1 &&  f1,
L2 &&  f2,
L3 &&  f3 
)
noexcept

◆ HostDeviceParallelFor() [17/22]

template<typename L1 , typename L2 >
std::enable_if_t<MaybeHostDeviceRunnable<L1>::value && MaybeHostDeviceRunnable<L2>::value> amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  info,
Box const &  box1,
Box const &  box2,
L1 &&  f1,
L2 &&  f2 
)
noexcept

◆ HostDeviceParallelFor() [18/22]

template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
std::enable_if_t<MaybeHostDeviceRunnable<L1>::value && MaybeHostDeviceRunnable<L2>::value> amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  info,
Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2 
)
noexcept

◆ HostDeviceParallelFor() [19/22]

template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
std::enable_if_t<MaybeHostDeviceRunnable<L1>::value && MaybeHostDeviceRunnable<L2>::value && MaybeHostDeviceRunnable<L3>::value> amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  info,
Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2,
Box const &  box3,
T3  ncomp3,
L3 &&  f3 
)
noexcept

◆ HostDeviceParallelFor() [20/22]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t<MaybeHostDeviceRunnable<L>::value> amrex::HostDeviceParallelFor ( Gpu::KernelInfo const &  info,
n,
L &&  f 
)
noexcept

◆ HostDeviceParallelFor() [21/22]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::HostDeviceParallelFor ( n,
L &&  f 
)
noexcept

◆ HostDeviceParallelFor() [22/22]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t<MaybeHostDeviceRunnable<L>::value> amrex::HostDeviceParallelFor ( n,
L &&  f 
)
noexcept

◆ htod_memcpy() [1/2]

template<class FAB , class foo = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::htod_memcpy ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src 
)

◆ htod_memcpy() [2/2]

template<class FAB , class foo = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::htod_memcpy ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src,
int  scomp,
int  dcomp,
int  ncomp 
)

◆ ignore_unused()

template<class... Ts>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::ignore_unused ( const Ts &  ...)

This shuts up the compiler about unused variables.

◆ indexFromValue()

template<class FAB , class foo = std::enable_if_t<IsBaseFab<FAB>::value>>
IntVect amrex::indexFromValue ( FabArray< FAB > const &  mf,
int  comp,
IntVect const &  nghost,
typename FAB::value_type  value 
)

◆ Initialize() [1/2]

amrex::AMReX * amrex::Initialize ( int argc,
char **&  argv,
bool  build_parm_parse = true,
MPI_Comm  mpi_comm = MPI_COMM_WORLD,
const std::function< void()> &  func_parm_parse = {},
std::ostream &  a_osout = std::cout,
std::ostream &  a_oserr = std::cerr,
ErrorHandler  a_errorhandler = nullptr 
)

◆ Initialize() [2/2]

amrex::AMReX * amrex::Initialize ( MPI_Comm  mpi_comm,
std::ostream &  a_osout = std::cout,
std::ostream &  a_oserr = std::cerr,
ErrorHandler  a_errhandler = nullptr 
)

◆ InitRandom()

void amrex::InitRandom ( ULong  seed,
int  nprocs = ParallelDescriptor::NProcs() 
)

Set the seed of the random number generator.

There is also an entry point for Fortran callable as:

INTEGER seed call blutilinitrand(seed)

or

INTEGER seed call blinitrand(seed)

◆ InterpAddBox()

void amrex::InterpAddBox ( MultiFabCopyDescriptor fabCopyDesc,
BoxList returnUnfilledBoxes,
Vector< FillBoxId > &  returnedFillBoxIds,
const Box subbox,
MultiFabId  faid1,
MultiFabId  faid2,
Real  t1,
Real  t2,
Real  t,
int  src_comp,
int  dest_comp,
int  num_comp,
bool  extrap 
)

◆ interpbndrydata_o1()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::interpbndrydata_o1 ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  bdry,
int  nb,
Array4< Real const > const &  crse,
int  nc,
Dim3 const &  r 
)
noexcept

◆ interpbndrydata_x_o3()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::interpbndrydata_x_o3 ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  bdry,
int  nb,
Array4< Real const > const &  crse,
int  nc,
Dim3 const &  r,
Array4< int const > const &  mask,
int  not_covered 
)
noexcept

◆ interpbndrydata_y_o3()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::interpbndrydata_y_o3 ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  bdry,
int  nb,
Array4< Real const > const &  crse,
int  nc,
Dim3 const &  r,
Array4< int const > const &  mask,
int  not_covered 
)
noexcept

◆ interpbndrydata_z_o3()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::interpbndrydata_z_o3 ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  bdry,
int  nb,
Array4< Real const > const &  crse,
int  nc,
Dim3 const &  r,
Array4< int const > const &  mask,
int  not_covered 
)
noexcept

◆ InterpCrseFineBndryEMfield() [1/2]

void amrex::InterpCrseFineBndryEMfield ( InterpEM_t  interp_type,
const Array< MultiFab const *, AMREX_SPACEDIM > &  crse,
const Array< MultiFab *, AMREX_SPACEDIM > &  fine,
const Geometry cgeom,
const Geometry fgeom,
int  ref_ratio 
)

◆ InterpCrseFineBndryEMfield() [2/2]

void amrex::InterpCrseFineBndryEMfield ( InterpEM_t  interp_type,
const Array< MultiFab, AMREX_SPACEDIM > &  crse,
Array< MultiFab, AMREX_SPACEDIM > &  fine,
const Geometry cgeom,
const Geometry fgeom,
int  ref_ratio 
)

◆ InterpFillFab()

void amrex::InterpFillFab ( MultiFabCopyDescriptor fabCopyDesc,
const Vector< FillBoxId > &  fillBoxIds,
MultiFabId  faid1,
MultiFabId  faid2,
FArrayBox dest,
Real  t1,
Real  t2,
Real  t,
int  src_comp,
int  dest_comp,
int  num_comp,
bool  extrap 
)

◆ InterpFromCoarseLevel() [1/4]

template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > amrex::InterpFromCoarseLevel ( Array< MF *, AMREX_SPACEDIM > const &  mf,
IntVect const &  nghost,
Real  time,
const Array< MF *, AMREX_SPACEDIM > &  cmf,
int  scomp,
int  dcomp,
int  ncomp,
const Geometry cgeom,
const Geometry fgeom,
Array< BC, AMREX_SPACEDIM > &  cbc,
int  cbccomp,
Array< BC, AMREX_SPACEDIM > &  fbc,
int  fbccomp,
const IntVect ratio,
Interp *  mapper,
const Array< Vector< BCRec >, AMREX_SPACEDIM > &  bcs,
int  bcscomp,
const PreInterpHook &  pre_interp = {},
const PostInterpHook &  post_interp = {} 
)

◆ InterpFromCoarseLevel() [2/4]

template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > amrex::InterpFromCoarseLevel ( Array< MF *, AMREX_SPACEDIM > const &  mf,
Real  time,
const Array< MF *, AMREX_SPACEDIM > &  cmf,
int  scomp,
int  dcomp,
int  ncomp,
const Geometry cgeom,
const Geometry fgeom,
Array< BC, AMREX_SPACEDIM > &  cbc,
int  cbccomp,
Array< BC, AMREX_SPACEDIM > &  fbc,
int  fbccomp,
const IntVect ratio,
Interp *  mapper,
const Array< Vector< BCRec >, AMREX_SPACEDIM > &  bcs,
int  bcscomp,
const PreInterpHook &  pre_interp = {},
const PostInterpHook &  post_interp = {} 
)

◆ InterpFromCoarseLevel() [3/4]

template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > amrex::InterpFromCoarseLevel ( MF &  mf,
IntVect const &  nghost,
Real  time,
const MF &  cmf,
int  scomp,
int  dcomp,
int  ncomp,
const Geometry cgeom,
const Geometry fgeom,
BC &  cbc,
int  cbccomp,
BC &  fbc,
int  fbccomp,
const IntVect ratio,
Interp *  mapper,
const Vector< BCRec > &  bcs,
int  bcscomp,
const PreInterpHook &  pre_interp = {},
const PostInterpHook &  post_interp = {} 
)

◆ InterpFromCoarseLevel() [4/4]

template<typename MF , typename BC , typename Interp , typename PreInterpHook = NullInterpHook<typename MF::FABType::value_type>, typename PostInterpHook = NullInterpHook<typename MF::FABType::value_type>>
std::enable_if_t< IsFabArray< MF >::value > amrex::InterpFromCoarseLevel ( MF &  mf,
Real  time,
const MF &  cmf,
int  scomp,
int  dcomp,
int  ncomp,
const Geometry cgeom,
const Geometry fgeom,
BC &  cbc,
int  cbccomp,
BC &  fbc,
int  fbccomp,
const IntVect ratio,
Interp *  mapper,
const Vector< BCRec > &  bcs,
int  bcscomp,
const PreInterpHook &  pre_interp = {},
const PostInterpHook &  post_interp = {} 
)

◆ intersect() [1/6]

void amrex::intersect ( BoxDomain dest,
const BoxDomain fin,
const Box b 
)

Compute the intersection of BoxDomain fin with Box b and place the result into BoxDomain dest.

◆ intersect() [2/6]

BoxArray amrex::intersect ( const BoxArray ba,
const Box b,
const IntVect ng 
)

◆ intersect() [3/6]

BoxArray amrex::intersect ( const BoxArray ba,
const Box b,
int  ng 
)

Make a BoxArray from the intersection of Box b and BoxArray(+ghostcells).

◆ intersect() [4/6]

BoxList amrex::intersect ( const BoxArray ba,
const BoxList bl 
)

Make a BoxList from the intersection of BoxArray and BoxList.

◆ intersect() [5/6]

BoxArray amrex::intersect ( const BoxArray lhs,
const BoxArray rhs 
)

Make a BoxArray from the intersection of two BoxArrays.

◆ intersect() [6/6]

BoxList amrex::intersect ( const BoxList bl,
const Box b 
)

Returns a BoxList defining the intersection of bl with b.

◆ InvNormDist()

double amrex::InvNormDist ( double  p)

This function returns an approximation of the inverse cumulative standard normal distribution function. I.e., given P, it returns an approximation to the X satisfying P = Pr{Z <= X} where Z is a random variable from the standard normal distribution.

The algorithm uses a minimax approximation by rational functions and the result has a relative error whose absolute value is less than 1.15e-9.

Author
Peter J. Acklam Time-stamp: 2002-06-09 18:45:44 +0200 E-mail: jackl.nosp@m.am@m.nosp@m.ath.u.nosp@m.io.n.nosp@m.o WWW URL: http://www.math.uio.no/~jacklam

"p" MUST be in the open interval (0,1).

Entry points for Fortran:

REAL_T val call blinvnormdist(val)

Internally, the Fortran entry point calls a static Mersenne Twister object (the same one called by blutilrand()) to get a random number in the open interval (0,1), and then sets "val" to the result of calling amrex::InvNormDist() with that random number.

◆ InvNormDistBest()

double amrex::InvNormDistBest ( double  p)

This function returns an approximation of the inverse cumulative standard normal distribution function. I.e., given P, it returns an approximation to the X satisfying P = Pr{Z <= X} where Z is a random variable from the standard normal distribution.

Original FORTRAN77 version by Michael Wichura.

Michael Wichura, The Percentage Points of the Normal Distribution, Algorithm AS 241, Applied Statistics, Volume 37, Number 3, pages 477-484, 1988.

Our version is based on the C++ version by John Burkardt.

The algorithm uses a minimax approximation by rational functions and the result is good to roughly machine precision. This routine is roughly 30% more costly than InvNormDist() above.

"p" MUST be in the open interval (0,1).

Entry points for Fortran:

REAL_T val call blinvnormdistbest(val)

Internally, the Fortran entry point calls a static Mersenne Twister object (the same one called by blutilrand()) to get a random number in the open interval (0,1), and then sets "val" to the result of calling amrex::InvNormDist() with that random number.

◆ iparser_aligned_size()

static std::size_t amrex::iparser_aligned_size ( std::size_t  N)
static

◆ iparser_allocate()

static void* amrex::iparser_allocate ( struct amrex_iparser my_iparser,
std::size_t  N 
)
static

◆ iparser_ast_depth()

int amrex::iparser_ast_depth ( struct iparser_node node)

◆ iparser_ast_dup()

struct iparser_node * amrex::iparser_ast_dup ( struct amrex_iparser my_iparser,
struct iparser_node node,
int  move 
)

◆ iparser_ast_get_symbols()

void amrex::iparser_ast_get_symbols ( struct iparser_node node,
std::set< std::string > &  symbols,
std::set< std::string > &  local_symbols 
)

◆ iparser_ast_optimize()

void amrex::iparser_ast_optimize ( struct iparser_node node)

◆ iparser_ast_print()

void amrex::iparser_ast_print ( struct iparser_node node,
std::string const &  space,
AllPrint printer 
)

◆ iparser_ast_print_f1()

static void amrex::iparser_ast_print_f1 ( struct iparser_f1 f1,
std::string const &  space,
AllPrint printer 
)
static

◆ iparser_ast_print_f2()

static void amrex::iparser_ast_print_f2 ( struct iparser_f2 f2,
std::string const &  space,
AllPrint printer 
)
static

◆ iparser_ast_print_f3()

static void amrex::iparser_ast_print_f3 ( struct iparser_f3 f3,
std::string const &  space,
AllPrint printer 
)
static

◆ iparser_ast_regvar()

void amrex::iparser_ast_regvar ( struct iparser_node node,
char const *  name,
int  i 
)

◆ iparser_ast_setconst()

void amrex::iparser_ast_setconst ( struct iparser_node node,
char const *  name,
int  c 
)

◆ iparser_ast_size()

std::size_t amrex::iparser_ast_size ( struct iparser_node node)

◆ iparser_call_f1()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::iparser_call_f1 ( enum  iparser_f1_t,
int  a 
)

There is only one type for now

◆ iparser_call_f2()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::iparser_call_f2 ( enum iparser_f2_t  type,
int  a,
int  b 
)

◆ iparser_call_f3()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::iparser_call_f3 ( enum  iparser_f3_t,
int  a,
int  b,
int  c 
)

◆ iparser_compile()

void amrex::iparser_compile ( struct amrex_iparser parser,
char *  p 
)
inline

◆ iparser_compile_exe_size()

void amrex::iparser_compile_exe_size ( struct iparser_node node,
char *&  p,
std::size_t &  exe_size,
int max_stack_size,
int stack_size,
Vector< char * > &  local_variables 
)

◆ iparser_defexpr()

void amrex::iparser_defexpr ( struct iparser_node body)

◆ iparser_depth()

int amrex::iparser_depth ( struct amrex_iparser iparser)

◆ iparser_dup()

struct amrex_iparser * amrex::iparser_dup ( struct amrex_iparser source)

◆ iparser_exe_eval()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::iparser_exe_eval ( char *  p,
int const *  x 
)

◆ iparser_exe_size()

std::size_t amrex::iparser_exe_size ( struct amrex_iparser parser,
int max_stack_size,
int stack_size 
)
inline

◆ iparser_get_symbols()

std::set< std::string > amrex::iparser_get_symbols ( struct amrex_iparser iparser)

◆ iparser_local_symbol_index()

static int amrex::iparser_local_symbol_index ( struct iparser_symbol sym,
Vector< char * > &  local_variables 
)
static

◆ iparser_makesymbol()

struct iparser_symbol * amrex::iparser_makesymbol ( char *  name)

◆ iparser_newassign()

struct iparser_node * amrex::iparser_newassign ( struct iparser_symbol sym,
struct iparser_node v 
)

◆ iparser_newf1()

struct iparser_node * amrex::iparser_newf1 ( enum iparser_f1_t  ftype,
struct iparser_node l 
)

◆ iparser_newf2()

struct iparser_node * amrex::iparser_newf2 ( enum iparser_f2_t  ftype,
struct iparser_node l,
struct iparser_node r 
)

◆ iparser_newf3()

struct iparser_node * amrex::iparser_newf3 ( enum iparser_f3_t  ftype,
struct iparser_node n1,
struct iparser_node n2,
struct iparser_node n3 
)

◆ iparser_newlist()

struct iparser_node * amrex::iparser_newlist ( struct iparser_node nl,
struct iparser_node nr 
)

◆ iparser_newnode()

struct iparser_node * amrex::iparser_newnode ( enum iparser_node_t  type,
struct iparser_node l,
struct iparser_node r 
)

◆ iparser_newnumber()

struct iparser_node * amrex::iparser_newnumber ( int  d)

◆ iparser_newsymbol()

struct iparser_node * amrex::iparser_newsymbol ( struct iparser_symbol symbol)

◆ iparser_print()

void amrex::iparser_print ( struct amrex_iparser iparser)

◆ iparser_regvar()

void amrex::iparser_regvar ( struct amrex_iparser iparser,
char const *  name,
int  i 
)

◆ iparser_setconst()

void amrex::iparser_setconst ( struct amrex_iparser iparser,
char const *  name,
int  c 
)

◆ is_aligned()

bool amrex::is_aligned ( const void *  p,
std::size_t  alignment 
)
inlinenoexcept

◆ is_integer()

bool amrex::is_integer ( const char *  str)

Useful C++ Utility Functions.

Return true if argument is a non-zero length string of digits.

◆ is_it()

template<typename T >
bool amrex::is_it ( std::string const &  s,
T &  v 
)

Return true and store value in v if string s is type T.

◆ isEmpty() [1/2]

AMREX_FORCE_INLINE bool amrex::isEmpty ( Box const &  b)
noexcept

◆ isEmpty() [2/2]

template<typename T , typename std::enable_if< std::is_integral< T >::value, int >::type = 0>
bool amrex::isEmpty ( n)
noexcept

◆ isMFIterSafe()

bool amrex::isMFIterSafe ( const FabArrayBase x,
const FabArrayBase y 
)
inline

Is it safe to have these two MultiFabs in the same MFiter? True means safe; false means maybe.

◆ knapsack()

static void amrex::knapsack ( const std::vector< Long > &  wgts,
int  nprocs,
std::vector< std::vector< int > > &  result,
Real &  efficiency,
bool  do_full_knapsack,
int  nmax 
)
static

◆ launch() [1/4]

template<typename L >
void amrex::launch ( int  nblocks,
int  nthreads_per_block,
gpuStream_t  stream,
L &&  f 
)
noexcept

◆ launch() [2/4]

template<typename L >
void amrex::launch ( int  nblocks,
int  nthreads_per_block,
std::size_t  shared_mem_bytes,
gpuStream_t  stream,
L &&  f 
)
noexcept

◆ launch() [3/4]

template<typename T , typename L >
void amrex::launch ( T const &  n,
L &&  f 
)
noexcept

◆ launch() [4/4]

template<typename T , typename L >
void amrex::launch ( T const &  n,
L &&  f,
std::size_t  = 0 
)
noexcept

◆ launch_global() [1/2]

template<class L >
AMREX_GPU_GLOBAL void amrex::launch_global ( f0)

◆ launch_global() [2/2]

template<class L , class... Lambdas>
AMREX_GPU_GLOBAL void amrex::launch_global ( f0,
Lambdas...  fs 
)

◆ launch_host() [1/2]

template<class L >
void amrex::launch_host ( L &&  f0)
noexcept

◆ launch_host() [2/2]

template<class L , class... Lambdas>
void amrex::launch_host ( L &&  f0,
Lambdas &&...  fs 
)
noexcept

◆ lbound() [1/2]

template<class T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::lbound ( Array4< T > const &  a)
noexcept

◆ lbound() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::lbound ( Box const &  box)
noexcept

◆ length() [1/2]

template<class T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::length ( Array4< T > const &  a)
noexcept

◆ length() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::length ( Box const &  box)
noexcept

◆ LevelFullPath()

std::string amrex::LevelFullPath ( int  level,
const std::string &  plotfilename,
const std::string &  levelPrefix 
)

return the full path of the level directory, e.g., plt00005/Level_5

◆ LevelPath()

std::string amrex::LevelPath ( int  level,
const std::string &  levelPrefix 
)

return the name of the level directory, e.g., Level_5

◆ log()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::log ( const GpuComplex< T > &  a_z)
noexcept

Complex natural logarithm function.

◆ Loop() [1/4]

template<class F >
AMREX_GPU_HOST_DEVICE void amrex::Loop ( Box const &  bx,
F &&  f 
)
noexcept

◆ Loop() [2/4]

template<class F >
AMREX_GPU_HOST_DEVICE void amrex::Loop ( Box const &  bx,
int  ncomp,
F &&  f 
)
noexcept

◆ Loop() [3/4]

template<class F >
AMREX_GPU_HOST_DEVICE void amrex::Loop ( Dim3  lo,
Dim3  hi,
F &&  f 
)
noexcept

◆ Loop() [4/4]

template<class F >
AMREX_GPU_HOST_DEVICE void amrex::Loop ( Dim3  lo,
Dim3  hi,
int  ncomp,
F &&  f 
)
noexcept

◆ LoopConcurrent() [1/4]

template<class F >
AMREX_GPU_HOST_DEVICE void amrex::LoopConcurrent ( Box const &  bx,
F &&  f 
)
noexcept

◆ LoopConcurrent() [2/4]

template<class F >
AMREX_GPU_HOST_DEVICE void amrex::LoopConcurrent ( Box const &  bx,
int  ncomp,
F &&  f 
)
noexcept

◆ LoopConcurrent() [3/4]

template<class F >
AMREX_GPU_HOST_DEVICE void amrex::LoopConcurrent ( Dim3  lo,
Dim3  hi,
F &&  f 
)
noexcept

◆ LoopConcurrent() [4/4]

template<class F >
AMREX_GPU_HOST_DEVICE void amrex::LoopConcurrent ( Dim3  lo,
Dim3  hi,
int  ncomp,
F &&  f 
)
noexcept

◆ LoopConcurrentOnCpu() [1/4]

template<class F >
void amrex::LoopConcurrentOnCpu ( Box const &  bx,
F &&  f 
)
noexcept

◆ LoopConcurrentOnCpu() [2/4]

template<class F >
void amrex::LoopConcurrentOnCpu ( Box const &  bx,
int  ncomp,
F &&  f 
)
noexcept

◆ LoopConcurrentOnCpu() [3/4]

template<class F >
void amrex::LoopConcurrentOnCpu ( Dim3  lo,
Dim3  hi,
F &&  f 
)
noexcept

◆ LoopConcurrentOnCpu() [4/4]

template<class F >
void amrex::LoopConcurrentOnCpu ( Dim3  lo,
Dim3  hi,
int  ncomp,
F &&  f 
)
noexcept

◆ LoopOnCpu() [1/4]

template<class F >
void amrex::LoopOnCpu ( Box const &  bx,
F &&  f 
)
noexcept

◆ LoopOnCpu() [2/4]

template<class F >
void amrex::LoopOnCpu ( Box const &  bx,
int  ncomp,
F &&  f 
)
noexcept

◆ LoopOnCpu() [3/4]

template<class F >
void amrex::LoopOnCpu ( Dim3  lo,
Dim3  hi,
F &&  f 
)
noexcept

◆ LoopOnCpu() [4/4]

template<class F >
void amrex::LoopOnCpu ( Dim3  lo,
Dim3  hi,
int  ncomp,
F &&  f 
)
noexcept

◆ mac_interpolate()

template<typename P >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mac_interpolate ( const P &  p,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  plo,
amrex::GpuArray< amrex::Real, AMREX_SPACEDIM > const &  dxi,
amrex::GpuArray< amrex::Array4< amrex::Real const >, AMREX_SPACEDIM > const &  p_uccarr,
amrex::ParticleReal *  val 
)

◆ makeArray4()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Array4<T> amrex::makeArray4 ( T *  p,
Box const &  bx,
int  ncomp 
)
noexcept

◆ makeEBFabFactory() [1/3]

std::unique_ptr< EBFArrayBoxFactory > amrex::makeEBFabFactory ( const EB2::IndexSpace index_space,
const Geometry a_geom,
const BoxArray a_ba,
const DistributionMapping a_dm,
const Vector< int > &  a_ngrow,
EBSupport  a_support 
)

◆ makeEBFabFactory() [2/3]

std::unique_ptr< EBFArrayBoxFactory > amrex::makeEBFabFactory ( const EB2::Level eb_level,
const BoxArray a_ba,
const DistributionMapping a_dm,
const Vector< int > &  a_ngrow,
EBSupport  a_support 
)

◆ makeEBFabFactory() [3/3]

std::unique_ptr< EBFArrayBoxFactory > amrex::makeEBFabFactory ( const Geometry a_geom,
const BoxArray a_ba,
const DistributionMapping a_dm,
const Vector< int > &  a_ngrow,
EBSupport  a_support 
)

◆ makeFineMask() [1/7]

iMultiFab amrex::makeFineMask ( const BoxArray cba,
const DistributionMapping cdm,
const BoxArray fba,
const IntVect ratio,
int  crse_value,
int  fine_value 
)

◆ makeFineMask() [2/7]

MultiFab amrex::makeFineMask ( const BoxArray cba,
const DistributionMapping cdm,
const BoxArray fba,
const IntVect ratio,
Real  crse_value,
Real  fine_value 
)

◆ makeFineMask() [3/7]

iMultiFab amrex::makeFineMask ( const BoxArray cba,
const DistributionMapping cdm,
const IntVect cnghost,
const BoxArray fba,
const IntVect ratio,
Periodicity const &  period,
int  crse_value,
int  fine_value 
)

◆ makeFineMask() [4/7]

template<typename FAB >
iMultiFab amrex::makeFineMask ( const FabArray< FAB > &  cmf,
const BoxArray fba,
const IntVect ratio,
int  crse_value = 0,
int  fine_value = 1 
)

Return an iMultiFab that has the same BoxArray and DistributionMapping as the coarse MultiFab cmf. Cells covered by the coarsened fine grids are set to fine_value, whereas other cells are set to crse_value.

◆ makeFineMask() [5/7]

template<typename FAB >
iMultiFab amrex::makeFineMask ( const FabArray< FAB > &  cmf,
const BoxArray fba,
const IntVect ratio,
Periodicity const &  period,
int  crse_value,
int  fine_value 
)

◆ makeFineMask() [6/7]

template<typename FAB >
iMultiFab amrex::makeFineMask ( const FabArray< FAB > &  cmf,
const FabArray< FAB > &  fmf,
const IntVect cnghost,
const IntVect ratio,
Periodicity const &  period,
int  crse_value,
int  fine_value 
)

◆ makeFineMask() [7/7]

template<typename FAB >
iMultiFab amrex::makeFineMask ( const FabArray< FAB > &  cmf,
const FabArray< FAB > &  fmf,
const IntVect cnghost,
const IntVect ratio,
Periodicity const &  period,
int  crse_value,
int  fine_value,
LayoutData< int > &  has_cf 
)

◆ makeFineMask_doit()

template<typename FAB >
void amrex::makeFineMask_doit ( FabArray< FAB > &  mask,
const BoxArray fba,
const IntVect ratio,
Periodicity const &  period,
typename FAB::value_type  crse_value,
typename FAB::value_type  fine_value 
)

◆ MakeFuncPctTimesMF()

void amrex::MakeFuncPctTimesMF ( const Vector< Vector< BLProfStats::FuncStat > > &  funcStats,
const Vector< std::string > &  blpFNames,
const std::map< std::string, BLProfiler::ProfStats > &  mProfStats,
Real  runTime,
int  dataNProcs 
)

◆ makeHypre()

std::unique_ptr< Hypre > amrex::makeHypre ( const BoxArray grids,
const DistributionMapping dmap,
const Geometry geom,
MPI_Comm  comm_,
Hypre::Interface  interface,
const iMultiFab overset_mask 
)

◆ makePetsc()

std::unique_ptr< PETScABecLap > amrex::makePetsc ( const BoxArray grids,
const DistributionMapping dmap,
const Geometry geom,
MPI_Comm  comm_ 
)

◆ makePolymorphic()

template<typename T >
PolymorphicArray4<T> amrex::makePolymorphic ( Array4< T > const &  a)

◆ makeSlab()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::makeSlab ( Box const &  b,
int  direction,
int  slab_index 
)
noexcept

◆ makeTuple()

template<typename... Ts>
constexpr AMREX_GPU_HOST_DEVICE GpuTuple<detail::tuple_decay_t<Ts>...> amrex::makeTuple ( Ts &&...  args)
constexpr

◆ makeXDim3()

XDim3 amrex::makeXDim3 ( const Array< Real, AMREX_SPACEDIM > &  a)
inlinenoexcept

◆ match()

bool amrex::match ( const BoxArray x,
const BoxArray y 
)

Note that two BoxArrays that match are not necessarily equal.

◆ max() [1/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::max ( const IntVect p1,
const IntVect p2 
)
noexcept

Returns the IntVect that is the component-wise maximum of two argument IntVects.

◆ max() [2/4]

AMREX_GPU_HOST_DEVICE RealVect amrex::max ( const RealVect p1,
const RealVect p2 
)
inlinenoexcept

Returns the RealVect that is the component-wise maximum of two argument RealVects.

◆ max() [3/4]

template<class T >
AMREX_GPU_HOST_DEVICE constexpr const AMREX_FORCE_INLINE T& amrex::max ( const T &  a,
const T &  b 
)
constexprnoexcept

◆ max() [4/4]

template<class T , class ... Ts>
AMREX_GPU_HOST_DEVICE constexpr const AMREX_FORCE_INLINE T& amrex::max ( const T &  a,
const T &  b,
const Ts &...  c 
)
constexprnoexcept

◆ max_lbound() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::max_lbound ( Box const &  b1,
Box const &  b2 
)
noexcept

◆ max_lbound() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::max_lbound ( Box const &  b1,
Dim3 const &  lo 
)
noexcept

◆ MeshToParticle()

template<class PC , class MF , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void amrex::MeshToParticle ( PC &  pc,
MF const &  mf,
int  lev,
F &&  f 
)

◆ mf_cell_bilin_interp()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mf_cell_bilin_interp ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  fine,
int  fcomp,
Array4< Real const > const &  crse,
int  ccomp,
IntVect const &  ratio 
)
noexcept

◆ mf_cell_cons_lin_interp()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mf_cell_cons_lin_interp ( int  i,
int  j,
int  k,
int  ns,
Array4< Real > const &  fine,
int  fcomp,
Array4< Real const > const &  slope,
Array4< Real const > const &  crse,
int  ccomp,
int  ncomp,
IntVect const &  ratio 
)
noexcept

◆ mf_cell_cons_lin_interp_llslope()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mf_cell_cons_lin_interp_llslope ( int  i,
int  j,
int  k,
Array4< Real > const &  slope,
Array4< Real const > const &  u,
int  scomp,
int  ncomp,
Box const &  domain,
BCRec const *  bc 
)
noexcept

◆ mf_cell_cons_lin_interp_mcslope()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mf_cell_cons_lin_interp_mcslope ( int  i,
int  j,
int  k,
int  ns,
Array4< Real > const &  slope,
Array4< Real const > const &  u,
int  scomp,
int  ncomp,
Box const &  domain,
IntVect const &  ratio,
BCRec const *  bc 
)
noexcept

◆ mf_cell_cons_lin_interp_mcslope_rz()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mf_cell_cons_lin_interp_mcslope_rz ( int  i,
int  j,
int  ns,
Array4< Real > const &  slope,
Array4< Real const > const &  u,
int  scomp,
int  ncomp,
Box const &  domain,
IntVect const &  ratio,
BCRec const *  bc,
Real  drf,
Real  rlo 
)
noexcept

◆ mf_cell_cons_lin_interp_mcslope_sph()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mf_cell_cons_lin_interp_mcslope_sph ( int  i,
int  ns,
Array4< Real > const &  slope,
Array4< Real const > const &  u,
int  scomp,
int  ,
Box const &  domain,
IntVect const &  ratio,
BCRec const *  bc,
Real  drf,
Real  rlo 
)
noexcept

◆ mf_cell_cons_lin_interp_rz()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mf_cell_cons_lin_interp_rz ( int  i,
int  j,
int  ns,
Array4< Real > const &  fine,
int  fcomp,
Array4< Real const > const &  slope,
Array4< Real const > const &  crse,
int  ccomp,
int  ncomp,
IntVect const &  ratio,
Real  drf,
Real  rlo 
)
noexcept

◆ mf_cell_cons_lin_interp_sph()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mf_cell_cons_lin_interp_sph ( int  i,
int  ns,
Array4< Real > const &  fine,
int  fcomp,
Array4< Real const > const &  slope,
Array4< Real const > const &  crse,
int  ccomp,
int  ,
IntVect const &  ratio,
Real  drf,
Real  rlo 
)
noexcept

◆ mf_nodebilin_interp()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mf_nodebilin_interp ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  fine,
int  fcomp,
Array4< Real const > const &  crse,
int  ccomp,
IntVect const &  ratio 
)
noexcept

◆ min() [1/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::min ( const IntVect p1,
const IntVect p2 
)
noexcept

Returns the IntVect that is the component-wise minimum of two argument IntVects.

◆ min() [2/4]

AMREX_GPU_HOST_DEVICE RealVect amrex::min ( const RealVect p1,
const RealVect p2 
)
inlinenoexcept

Returns the RealVect that is the component-wise minimum of two argument RealVects.

◆ min() [3/4]

template<class T >
AMREX_GPU_HOST_DEVICE constexpr const AMREX_FORCE_INLINE T& amrex::min ( const T &  a,
const T &  b 
)
constexprnoexcept

◆ min() [4/4]

template<class T , class ... Ts>
AMREX_GPU_HOST_DEVICE constexpr const AMREX_FORCE_INLINE T& amrex::min ( const T &  a,
const T &  b,
const Ts &...  c 
)
constexprnoexcept

◆ min_ubound() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::min_ubound ( Box const &  b1,
Box const &  b2 
)
noexcept

◆ min_ubound() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::min_ubound ( Box const &  b1,
Dim3 const &  hi 
)
noexcept

◆ minBox() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::minBox ( Box const &  b1,
Box const &  b2,
IndexType  typ 
)
noexcept

◆ minBox() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::minBox ( const Box b1,
const Box b2 
)
noexcept

Modify Box to that of the minimum Box containing both the original Box and the argument. Both Boxes must have identical type.

◆ mlabeclap_adotx() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_adotx ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< Real const > const &  a,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< Real const > const &  bZ,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta 
)
noexcept

◆ mlabeclap_adotx() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_adotx ( int  i,
int  j,
int  ,
int  n,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< Real const > const &  a,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta 
)
noexcept

◆ mlabeclap_adotx() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_adotx ( int  i,
int  ,
int  ,
int  n,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< Real const > const &  a,
Array4< Real const > const &  bX,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta 
)
noexcept

◆ mlabeclap_adotx_os() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_adotx_os ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< Real const > const &  a,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< Real const > const &  bZ,
Array4< int const > const &  osm,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta 
)
noexcept

◆ mlabeclap_adotx_os() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_adotx_os ( int  i,
int  j,
int  ,
int  n,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< Real const > const &  a,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< int const > const &  osm,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta 
)
noexcept

◆ mlabeclap_adotx_os() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_adotx_os ( int  i,
int  ,
int  ,
int  n,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< Real const > const &  a,
Array4< Real const > const &  bX,
Array4< int const > const &  osm,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta 
)
noexcept

◆ mlabeclap_flux_x()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_flux_x ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  sol,
Array4< Real const > const &  bx,
Real  fac,
int  ncomp 
)
noexcept

◆ mlabeclap_flux_xface()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_flux_xface ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  sol,
Array4< Real const > const &  bx,
Real  fac,
int  xlen,
int  ncomp 
)
noexcept

◆ mlabeclap_flux_y()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_flux_y ( Box const &  box,
Array4< Real > const &  fy,
Array4< Real const > const &  sol,
Array4< Real const > const &  by,
Real  fac,
int  ncomp 
)
noexcept

◆ mlabeclap_flux_yface()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_flux_yface ( Box const &  box,
Array4< Real > const &  fy,
Array4< Real const > const &  sol,
Array4< Real const > const &  by,
Real  fac,
int  ylen,
int  ncomp 
)
noexcept

◆ mlabeclap_flux_z()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_flux_z ( Box const &  box,
Array4< Real > const &  fz,
Array4< Real const > const &  sol,
Array4< Real const > const &  bz,
Real  fac,
int  ncomp 
)
noexcept

◆ mlabeclap_flux_zface()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_flux_zface ( Box const &  box,
Array4< Real > const &  fz,
Array4< Real const > const &  sol,
Array4< Real const > const &  bz,
Real  fac,
int  zlen,
int  ncomp 
)
noexcept

◆ mlabeclap_normalize() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_normalize ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  x,
Array4< Real const > const &  a,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< Real const > const &  bZ,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta 
)
noexcept

◆ mlabeclap_normalize() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_normalize ( int  i,
int  j,
int  ,
int  n,
Array4< Real > const &  x,
Array4< Real const > const &  a,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta 
)
noexcept

◆ mlabeclap_normalize() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlabeclap_normalize ( int  i,
int  ,
int  ,
int  n,
Array4< Real > const &  x,
Array4< Real const > const &  a,
Array4< Real const > const &  bX,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta 
)
noexcept

◆ mlalap_adotx()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_adotx ( Box const &  box,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< Real const > const &  a,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta,
int  ncomp 
)
noexcept

◆ mlalap_adotx_m()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_adotx_m ( Box const &  box,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< Real const > const &  a,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta,
Real  dx,
Real  probxlo,
int  ncomp 
)
noexcept

◆ mlalap_flux_x()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_flux_x ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  sol,
Real  fac,
int  ncomp 
)
noexcept

◆ mlalap_flux_x_m()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_flux_x_m ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  sol,
Real  fac,
Real  dx,
Real  probxlo,
int  ncomp 
)
noexcept

◆ mlalap_flux_xface()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_flux_xface ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  sol,
Real  fac,
int  xlen,
int  ncomp 
)
noexcept

◆ mlalap_flux_xface_m()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_flux_xface_m ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  sol,
Real  fac,
int  xlen,
Real  dx,
Real  probxlo,
int  ncomp 
)
noexcept

◆ mlalap_flux_y()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_flux_y ( Box const &  box,
Array4< Real > const &  fy,
Array4< Real const > const &  sol,
Real  fac,
int  ncomp 
)
noexcept

◆ mlalap_flux_yface()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_flux_yface ( Box const &  box,
Array4< Real > const &  fy,
Array4< Real const > const &  sol,
Real  fac,
int  ylen,
int  ncomp 
)
noexcept

◆ mlalap_flux_z()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_flux_z ( Box const &  box,
Array4< Real > const &  fz,
Array4< Real const > const &  sol,
Real  fac,
int  ncomp 
)
noexcept

◆ mlalap_flux_zface()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_flux_zface ( Box const &  box,
Array4< Real > const &  fz,
Array4< Real const > const &  sol,
Real  fac,
int  zlen,
int  ncomp 
)
noexcept

◆ mlalap_gsrb() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_gsrb ( Box const &  box,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  alpha,
Real  dhx,
Array4< Real const > const &  a,
Array4< Real const > const &  f0,
Array4< int const > const &  m0,
Array4< Real const > const &  f1,
Array4< int const > const &  m1,
Box const &  vbox,
int  redblack,
int  ncomp 
)
noexcept

◆ mlalap_gsrb() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_gsrb ( Box const &  box,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  alpha,
Real  dhx,
Real  dhy,
Real  dhz,
Array4< Real const > const &  a,
Array4< Real const > const &  f0,
Array4< int const > const &  m0,
Array4< Real const > const &  f1,
Array4< int const > const &  m1,
Array4< Real const > const &  f2,
Array4< int const > const &  m2,
Array4< Real const > const &  f3,
Array4< int const > const &  m3,
Array4< Real const > const &  f4,
Array4< int const > const &  m4,
Array4< Real const > const &  f5,
Array4< int const > const &  m5,
Box const &  vbox,
int  redblack,
int  ncomp 
)
noexcept

◆ mlalap_gsrb_m()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_gsrb_m ( Box const &  box,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  alpha,
Real  dhx,
Array4< Real const > const &  a,
Array4< Real const > const &  f0,
Array4< int const > const &  m0,
Array4< Real const > const &  f1,
Array4< int const > const &  m1,
Box const &  vbox,
int  redblack,
Real  dx,
Real  probxlo,
int  ncomp 
)

◆ mlalap_normalize()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_normalize ( Box const &  box,
Array4< Real > const &  x,
Array4< Real const > const &  a,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta,
int  ncomp 
)
noexcept

◆ mlalap_normalize_m()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlalap_normalize_m ( Box const &  box,
Array4< Real > const &  x,
Array4< Real const > const &  a,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta,
Real  dx,
Real  probxlo,
int  ncomp 
)
noexcept

◆ mlebabeclap_adotx() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_adotx ( Box const &  box,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< Real const > const &  a,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< const int > const &  ccm,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vfrc,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  fcx,
Array4< Real const > const &  fcy,
Array4< Real const > const &  ba,
Array4< Real const > const &  bc,
Array4< Real const > const &  beb,
bool  is_dirichlet,
Array4< Real const > const &  phieb,
bool  is_inhomog,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta,
int  ncomp,
bool  beta_on_centroid,
bool  phi_on_centroid 
)
noexcept

◆ mlebabeclap_adotx() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_adotx ( Box const &  box,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< Real const > const &  a,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< Real const > const &  bZ,
Array4< const int > const &  ccm,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vfrc,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  apz,
Array4< Real const > const &  fcx,
Array4< Real const > const &  fcy,
Array4< Real const > const &  fcz,
Array4< Real const > const &  ba,
Array4< Real const > const &  bc,
Array4< Real const > const &  beb,
bool  is_dirichlet,
Array4< Real const > const &  phieb,
bool  is_inhomog,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta,
int  ncomp,
bool  beta_on_centroid,
bool  phi_on_centroid 
)
noexcept

◆ mlebabeclap_adotx_centroid() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_adotx_centroid ( Box const &  box,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< Real const > const &  a,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vfrc,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  fcx,
Array4< Real const > const &  fcy,
Array4< Real const > const &  ccent,
Array4< Real const > const &  ba,
Array4< Real const > const &  bcent,
Array4< Real const > const &  beb,
Array4< Real const > const &  phieb,
const int domlo_x,
const int domlo_y,
const int domhi_x,
const int domhi_y,
const bool &  on_x_face,
const bool &  on_y_face,
bool  is_eb_dirichlet,
bool  is_eb_inhomog,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta,
int  ncomp 
)
noexcept

◆ mlebabeclap_adotx_centroid() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_adotx_centroid ( Box const &  box,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< Real const > const &  a,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< Real const > const &  bZ,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vfrc,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  apz,
Array4< Real const > const &  fcx,
Array4< Real const > const &  fcy,
Array4< Real const > const &  fcz,
Array4< Real const > const &  ccent,
Array4< Real const > const &  ba,
Array4< Real const > const &  bcent,
Array4< Real const > const &  beb,
Array4< Real const > const &  phieb,
const int domlo_x,
const int domlo_y,
const int domlo_z,
const int domhi_x,
const int domhi_y,
const int domhi_z,
const bool &  on_x_face,
const bool &  on_y_face,
const bool &  on_z_face,
bool  is_eb_dirichlet,
bool  is_eb_inhomog,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  alpha,
Real  beta,
int  ncomp 
)
noexcept

◆ mlebabeclap_apply_bc_x()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_apply_bc_x ( int  side,
Box const &  box,
int  blen,
Array4< Real > const &  phi,
Array4< int const > const &  mask,
Array4< Real const > const &  area,
BoundCond  bct,
Real  bcl,
Array4< Real const > const &  bcval,
int  maxorder,
Real  dxinv,
int  inhomog,
int  icomp 
)
noexcept

◆ mlebabeclap_apply_bc_y()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_apply_bc_y ( int  side,
Box const &  box,
int  blen,
Array4< Real > const &  phi,
Array4< int const > const &  mask,
Array4< Real const > const &  area,
BoundCond  bct,
Real  bcl,
Array4< Real const > const &  bcval,
int  maxorder,
Real  dyinv,
int  inhomog,
int  icomp 
)
noexcept

◆ mlebabeclap_apply_bc_z()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_apply_bc_z ( int  side,
Box const &  box,
int  blen,
Array4< Real > const &  phi,
Array4< int const > const &  mask,
Array4< Real const > const &  area,
BoundCond  bct,
Real  bcl,
Array4< Real const > const &  bcval,
int  maxorder,
Real  dzinv,
int  inhomog,
int  icomp 
)
noexcept

◆ mlebabeclap_ebflux() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_ebflux ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  feb,
Array4< Real const > const &  x,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vfrc,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  apz,
Array4< Real const > const &  bc,
Array4< Real const > const &  beb,
Array4< Real const > const &  phieb,
bool  is_inhomog,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlebabeclap_ebflux() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_ebflux ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  feb,
Array4< Real const > const &  x,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vfrc,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  bc,
Array4< Real const > const &  beb,
Array4< Real const > const &  phieb,
bool  is_inhomog,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlebabeclap_flux_x()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_flux_x ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  apx,
Array4< Real const > const &  fcx,
Array4< Real const > const &  sol,
Array4< Real const > const &  bX,
Array4< int const > const &  ccm,
Real  dhx,
int  face_only,
int  ncomp,
Box const &  xbox,
bool  beta_on_centroid,
bool  phi_on_centroid 
)
noexcept

◆ mlebabeclap_flux_x_0()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_flux_x_0 ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  apx,
Array4< Real const > const &  sol,
Array4< Real const > const &  bX,
Real  dhx,
int  face_only,
int  ncomp,
Box const &  xbox 
)
noexcept

◆ mlebabeclap_flux_y()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_flux_y ( Box const &  box,
Array4< Real > const &  fy,
Array4< Real const > const &  apy,
Array4< Real const > const &  fcy,
Array4< Real const > const &  sol,
Array4< Real const > const &  bY,
Array4< int const > const &  ccm,
Real  dhy,
int  face_only,
int  ncomp,
Box const &  ybox,
bool  beta_on_centroid,
bool  phi_on_centroid 
)
noexcept

◆ mlebabeclap_flux_y_0()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_flux_y_0 ( Box const &  box,
Array4< Real > const &  fy,
Array4< Real const > const &  apy,
Array4< Real const > const &  sol,
Array4< Real const > const &  bY,
Real  dhy,
int  face_only,
int  ncomp,
Box const &  ybox 
)
noexcept

◆ mlebabeclap_flux_z()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_flux_z ( Box const &  box,
Array4< Real > const &  fz,
Array4< Real const > const &  apz,
Array4< Real const > const &  fcz,
Array4< Real const > const &  sol,
Array4< Real const > const &  bZ,
Array4< int const > const &  ccm,
Real  dhz,
int  face_only,
int  ncomp,
Box const &  zbox,
bool  beta_on_centroid,
bool  phi_on_centroid 
)
noexcept

◆ mlebabeclap_flux_z_0()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_flux_z_0 ( Box const &  box,
Array4< Real > const &  fz,
Array4< Real const > const &  apz,
Array4< Real const > const &  sol,
Array4< Real const > const &  bZ,
Real  dhz,
int  face_only,
int  ncomp,
Box const &  zbox 
)
noexcept

◆ mlebabeclap_grad_x()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_grad_x ( Box const &  box,
Array4< Real > const &  gx,
Array4< Real const > const &  sol,
Array4< Real const > const &  apx,
Array4< Real const > const &  fcx,
Array4< int const > const &  ccm,
Real  dxi,
int  ncomp,
bool  phi_on_centroid 
)
noexcept

◆ mlebabeclap_grad_x_0()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_grad_x_0 ( Box const &  box,
Array4< Real > const &  gx,
Array4< Real const > const &  sol,
Array4< Real const > const &  apx,
Real  dxi,
int  ncomp 
)
noexcept

◆ mlebabeclap_grad_y()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_grad_y ( Box const &  box,
Array4< Real > const &  gy,
Array4< Real const > const &  sol,
Array4< Real const > const &  apy,
Array4< Real const > const &  fcy,
Array4< int const > const &  ccm,
Real  dyi,
int  ncomp,
bool  phi_on_centroid 
)
noexcept

◆ mlebabeclap_grad_y_0()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_grad_y_0 ( Box const &  box,
Array4< Real > const &  gy,
Array4< Real const > const &  sol,
Array4< Real const > const &  apy,
Real  dyi,
int  ncomp 
)
noexcept

◆ mlebabeclap_grad_z()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_grad_z ( Box const &  box,
Array4< Real > const &  gz,
Array4< Real const > const &  sol,
Array4< Real const > const &  apz,
Array4< Real const > const &  fcz,
Array4< int const > const &  ccm,
Real  dzi,
int  ncomp,
bool  phi_on_centroid 
)
noexcept

◆ mlebabeclap_grad_z_0()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_grad_z_0 ( Box const &  box,
Array4< Real > const &  gz,
Array4< Real const > const &  sol,
Array4< Real const > const &  apz,
Real  dzi,
int  ncomp 
)
noexcept

◆ mlebabeclap_gsrb() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_gsrb ( Box const &  box,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  alpha,
Array4< Real const > const &  a,
Real  dhx,
Real  dhy,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< int const > const &  m0,
Array4< int const > const &  m2,
Array4< int const > const &  m1,
Array4< int const > const &  m3,
Array4< Real const > const &  f0,
Array4< Real const > const &  f2,
Array4< Real const > const &  f1,
Array4< Real const > const &  f3,
Array4< const int > const &  ccm,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vfrc,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  fcx,
Array4< Real const > const &  fcy,
Array4< Real const > const &  ba,
Array4< Real const > const &  bc,
Array4< Real const > const &  beb,
bool  is_dirichlet,
bool  beta_on_centroid,
bool  phi_on_centroid,
Box const &  vbox,
int  redblack,
int  ncomp 
)
noexcept

◆ mlebabeclap_gsrb() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_gsrb ( Box const &  box,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  alpha,
Array4< Real const > const &  a,
Real  dhx,
Real  dhy,
Real  dhz,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< Real const > const &  bZ,
Array4< int const > const &  m0,
Array4< int const > const &  m2,
Array4< int const > const &  m4,
Array4< int const > const &  m1,
Array4< int const > const &  m3,
Array4< int const > const &  m5,
Array4< Real const > const &  f0,
Array4< Real const > const &  f2,
Array4< Real const > const &  f4,
Array4< Real const > const &  f1,
Array4< Real const > const &  f3,
Array4< Real const > const &  f5,
Array4< const int > const &  ccm,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vfrc,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  apz,
Array4< Real const > const &  fcx,
Array4< Real const > const &  fcy,
Array4< Real const > const &  fcz,
Array4< Real const > const &  ba,
Array4< Real const > const &  bc,
Array4< Real const > const &  beb,
bool  is_dirichlet,
bool  beta_on_centroid,
bool  phi_on_centroid,
Box const &  vbox,
int  redblack,
int  ncomp 
)
noexcept

◆ mlebabeclap_normalize() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_normalize ( Box const &  box,
Array4< Real > const &  phi,
Real  alpha,
Array4< Real const > const &  a,
Real  dhx,
Real  dhy,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< const int > const &  ccm,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vfrc,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  fcx,
Array4< Real const > const &  fcy,
Array4< Real const > const &  ba,
Array4< Real const > const &  bc,
Array4< Real const > const &  beb,
bool  is_dirichlet,
bool  beta_on_centroid,
int  ncomp 
)
noexcept

◆ mlebabeclap_normalize() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebabeclap_normalize ( Box const &  box,
Array4< Real > const &  phi,
Real  alpha,
Array4< Real const > const &  a,
Real  dhx,
Real  dhy,
Real  dhz,
Array4< Real const > const &  bX,
Array4< Real const > const &  bY,
Array4< Real const > const &  bZ,
Array4< const int > const &  ccm,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vfrc,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  apz,
Array4< Real const > const &  fcx,
Array4< Real const > const &  fcy,
Array4< Real const > const &  fcz,
Array4< Real const > const &  ba,
Array4< Real const > const &  bc,
Array4< Real const > const &  beb,
bool  is_dirichlet,
bool  beta_on_centroid,
int  ncomp 
)
noexcept

◆ mlebndfdlap_adotx() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_adotx ( int  i,
int  j,
int  k,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< int const > const &  dmsk,
Array4< Real const > const &  a,
Real  bx,
Real  by 
)
noexcept

◆ mlebndfdlap_adotx() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_adotx ( int  i,
int  j,
int  k,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< int const > const &  dmsk,
Array4< Real const > const &  a,
Real  bx,
Real  by,
Real  bz 
)
noexcept

◆ mlebndfdlap_adotx_eb() [1/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_adotx_eb ( int  i,
int  j,
int  k,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecx,
Array4< Real const > const &  ecy,
Array4< Real const > const &  ecz,
Array4< Real const > const &  xeb,
Real  bx,
Real  by,
Real  bz 
)
noexcept

◆ mlebndfdlap_adotx_eb() [2/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_adotx_eb ( int  i,
int  j,
int  k,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecx,
Array4< Real const > const &  ecy,
Array4< Real const > const &  ecz,
Real  xeb,
Real  bx,
Real  by,
Real  bz 
)
noexcept

◆ mlebndfdlap_adotx_eb() [3/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_adotx_eb ( int  i,
int  j,
int  k,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecx,
Array4< Real const > const &  ecy,
Array4< Real const > const &  xeb,
Real  bx,
Real  by 
)
noexcept

◆ mlebndfdlap_adotx_eb() [4/4]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_adotx_eb ( int  i,
int  j,
int  k,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecx,
Array4< Real const > const &  ecy,
Real  xeb,
Real  bx,
Real  by 
)
noexcept

◆ mlebndfdlap_adotx_eb_doit() [1/2]

template<typename F >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_adotx_eb_doit ( int  i,
int  j,
int  k,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecx,
Array4< Real const > const &  ecy,
Array4< Real const > const &  ecz,
F &&  xeb,
Real  bx,
Real  by,
Real  bz 
)
noexcept

◆ mlebndfdlap_adotx_eb_doit() [2/2]

template<typename F >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_adotx_eb_doit ( int  i,
int  j,
int  k,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecx,
Array4< Real const > const &  ecy,
F &&  xeb,
Real  bx,
Real  by 
)
noexcept

◆ mlebndfdlap_grad_x() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_grad_x ( Box const &  b,
Array4< Real > const &  px,
Array4< Real const > const &  p,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecx,
Array4< Real const > const &  phieb,
Real  dxi 
)

◆ mlebndfdlap_grad_x() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_grad_x ( Box const &  b,
Array4< Real > const &  px,
Array4< Real const > const &  p,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecx,
Real  phieb,
Real  dxi 
)

◆ mlebndfdlap_grad_x_doit()

template<typename F >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_grad_x_doit ( int  i,
int  j,
int  k,
Array4< Real > const &  px,
Array4< Real const > const &  p,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecx,
F &&  phieb,
Real  dxi 
)

◆ mlebndfdlap_grad_y() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_grad_y ( Box const &  b,
Array4< Real > const &  py,
Array4< Real const > const &  p,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecy,
Array4< Real const > const &  phieb,
Real  dyi 
)

◆ mlebndfdlap_grad_y() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_grad_y ( Box const &  b,
Array4< Real > const &  py,
Array4< Real const > const &  p,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecy,
Real  phieb,
Real  dyi 
)

◆ mlebndfdlap_grad_y_doit()

template<typename F >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_grad_y_doit ( int  i,
int  j,
int  k,
Array4< Real > const &  py,
Array4< Real const > const &  p,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecy,
F &&  phieb,
Real  dyi 
)

◆ mlebndfdlap_gsrb() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_gsrb ( int  i,
int  j,
int  k,
Array4< Real > const &  x,
Array4< Real const > const &  rhs,
Array4< int const > const &  dmsk,
Array4< Real const > const &  a,
Real  bx,
Real  by,
int  redblack 
)
noexcept

◆ mlebndfdlap_gsrb() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_gsrb ( int  i,
int  j,
int  k,
Array4< Real > const &  x,
Array4< Real const > const &  rhs,
Array4< int const > const &  dmsk,
Array4< Real const > const &  a,
Real  bx,
Real  by,
Real  bz,
int  redblack 
)
noexcept

◆ mlebndfdlap_gsrb_eb() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_gsrb_eb ( int  i,
int  j,
int  k,
Array4< Real > const &  x,
Array4< Real const > const &  rhs,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecx,
Array4< Real const > const &  ecy,
Array4< Real const > const &  ecz,
Real  bx,
Real  by,
Real  bz,
int  redblack 
)
noexcept

◆ mlebndfdlap_gsrb_eb() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebndfdlap_gsrb_eb ( int  i,
int  j,
int  k,
Array4< Real > const &  x,
Array4< Real const > const &  rhs,
Array4< int const > const &  dmsk,
Array4< Real const > const &  ecx,
Array4< Real const > const &  ecy,
Real  bx,
Real  by,
int  redblack 
)
noexcept

◆ mlebtensor_cross_terms() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebtensor_cross_terms ( Box const &  box,
Array4< Real > const &  Ax,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
Array4< Real const > const &  fz,
Array4< Real const > const &  vel,
Array4< Real const > const &  etab,
Array4< Real const > const &  kapb,
Array4< int const > const &  ccm,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vol,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  apz,
Array4< Real const > const &  fcx,
Array4< Real const > const &  fcy,
Array4< Real const > const &  fcz,
Array4< Real const > const &  bc,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  bscalar 
)
noexcept

◆ mlebtensor_cross_terms() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebtensor_cross_terms ( Box const &  box,
Array4< Real > const &  Ax,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
Array4< Real const > const &  vel,
Array4< Real const > const &  etab,
Array4< Real const > const &  kapb,
Array4< int const > const &  ccm,
Array4< EBCellFlag const > const &  flag,
Array4< Real const > const &  vol,
Array4< Real const > const &  apx,
Array4< Real const > const &  apy,
Array4< Real const > const &  fcx,
Array4< Real const > const &  fcy,
Array4< Real const > const &  bc,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  bscalar 
)
noexcept

◆ mlebtensor_cross_terms_fx()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebtensor_cross_terms_fx ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  vel,
Array4< Real const > const &  etax,
Array4< Real const > const &  kapx,
Array4< Real const > const &  apx,
Array4< EBCellFlag const > const &  flag,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlebtensor_cross_terms_fy()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebtensor_cross_terms_fy ( Box const &  box,
Array4< Real > const &  fy,
Array4< Real const > const &  vel,
Array4< Real const > const &  etay,
Array4< Real const > const &  kapy,
Array4< Real const > const &  apy,
Array4< EBCellFlag const > const &  flag,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlebtensor_cross_terms_fz()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebtensor_cross_terms_fz ( Box const &  box,
Array4< Real > const &  fz,
Array4< Real const > const &  vel,
Array4< Real const > const &  etaz,
Array4< Real const > const &  kapz,
Array4< Real const > const &  apz,
Array4< EBCellFlag const > const &  flag,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlebtensor_flux_0()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebtensor_flux_0 ( Box const &  box,
Array4< Real > const &  Ax,
Array4< Real const > const &  fx,
Array4< Real const > const &  ap,
Real  bscalar 
)
noexcept

◆ mlebtensor_flux_x()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebtensor_flux_x ( Box const &  box,
Array4< Real > const &  Ax,
Array4< Real const > const &  fx,
Array4< Real const > const &  apx,
Array4< Real const > const &  fcx,
Real const  bscalar,
Array4< int const > const &  ccm,
int  face_only,
Box const &  xbox 
)
noexcept

◆ mlebtensor_flux_y()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebtensor_flux_y ( Box const &  box,
Array4< Real > const &  Ay,
Array4< Real const > const &  fy,
Array4< Real const > const &  apy,
Array4< Real const > const &  fcy,
Real const  bscalar,
Array4< int const > const &  ccm,
int  face_only,
Box const &  ybox 
)
noexcept

◆ mlebtensor_flux_z()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlebtensor_flux_z ( Box const &  box,
Array4< Real > const &  Az,
Array4< Real const > const &  fz,
Array4< Real const > const &  apz,
Array4< Real const > const &  fcz,
Real const  bscalar,
Array4< int const > const &  ccm,
int  face_only,
Box const &  zbox 
)
noexcept

◆ mllinop_apply_bc_x() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_bc_x ( int  side,
Box const &  box,
int  blen,
Array4< Real > const &  phi,
Array4< int const > const &  mask,
BoundCond  bct,
Real  bcl,
Array4< Real const > const &  bcval,
int  maxorder,
Real  dxinv,
int  inhomog,
int  icomp 
)
noexcept

◆ mllinop_apply_bc_x() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_bc_x ( int  side,
int  i,
int  j,
int  k,
int  blen,
Array4< Real > const &  phi,
Array4< int const > const &  mask,
BoundCond  bct,
Real  bcl,
Array4< Real const > const &  bcval,
int  maxorder,
Real  dxinv,
int  inhomog,
int  icomp 
)
noexcept

◆ mllinop_apply_bc_y() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_bc_y ( int  side,
Box const &  box,
int  blen,
Array4< Real > const &  phi,
Array4< int const > const &  mask,
BoundCond  bct,
Real  bcl,
Array4< Real const > const &  bcval,
int  maxorder,
Real  dyinv,
int  inhomog,
int  icomp 
)
noexcept

◆ mllinop_apply_bc_y() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_bc_y ( int  side,
int  i,
int  j,
int  k,
int  blen,
Array4< Real > const &  phi,
Array4< int const > const &  mask,
BoundCond  bct,
Real  bcl,
Array4< Real const > const &  bcval,
int  maxorder,
Real  dyinv,
int  inhomog,
int  icomp 
)
noexcept

◆ mllinop_apply_bc_z() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_bc_z ( int  side,
Box const &  box,
int  blen,
Array4< Real > const &  phi,
Array4< int const > const &  mask,
BoundCond  bct,
Real  bcl,
Array4< Real const > const &  bcval,
int  maxorder,
Real  dzinv,
int  inhomog,
int  icomp 
)
noexcept

◆ mllinop_apply_bc_z() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_bc_z ( int  side,
int  i,
int  j,
int  k,
int  blen,
Array4< Real > const &  phi,
Array4< int const > const &  mask,
BoundCond  bct,
Real  bcl,
Array4< Real const > const &  bcval,
int  maxorder,
Real  dzinv,
int  inhomog,
int  icomp 
)
noexcept

◆ mllinop_apply_innu_xhi()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_innu_xhi ( int  i,
int  j,
int  k,
Array4< Real > const &  rhs,
Array4< int const > const &  mask,
Array4< Real const > const &  bcoef,
BoundCond  bct,
Real  ,
Array4< Real const > const &  bcval,
Real  fac,
bool  has_bcoef,
int  icomp 
)
noexcept

◆ mllinop_apply_innu_xlo()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_innu_xlo ( int  i,
int  j,
int  k,
Array4< Real > const &  rhs,
Array4< int const > const &  mask,
Array4< Real const > const &  bcoef,
BoundCond  bct,
Real  ,
Array4< Real const > const &  bcval,
Real  fac,
bool  has_bcoef,
int  icomp 
)
noexcept

◆ mllinop_apply_innu_yhi()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_innu_yhi ( int  i,
int  j,
int  k,
Array4< Real > const &  rhs,
Array4< int const > const &  mask,
Array4< Real const > const &  bcoef,
BoundCond  bct,
Real  ,
Array4< Real const > const &  bcval,
Real  fac,
bool  has_bcoef,
int  icomp 
)
noexcept

◆ mllinop_apply_innu_yhi_m()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_innu_yhi_m ( int  i,
int  j,
int  k,
Array4< Real > const &  rhs,
Array4< int const > const &  mask,
BoundCond  bct,
Real  ,
Array4< Real const > const &  bcval,
Real  fac,
Real  xlo,
Real  dx,
int  icomp 
)
noexcept

◆ mllinop_apply_innu_ylo()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_innu_ylo ( int  i,
int  j,
int  k,
Array4< Real > const &  rhs,
Array4< int const > const &  mask,
Array4< Real const > const &  bcoef,
BoundCond  bct,
Real  ,
Array4< Real const > const &  bcval,
Real  fac,
bool  has_bcoef,
int  icomp 
)
noexcept

◆ mllinop_apply_innu_ylo_m()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_innu_ylo_m ( int  i,
int  j,
int  k,
Array4< Real > const &  rhs,
Array4< int const > const &  mask,
BoundCond  bct,
Real  ,
Array4< Real const > const &  bcval,
Real  fac,
Real  xlo,
Real  dx,
int  icomp 
)
noexcept

◆ mllinop_apply_innu_zhi()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_innu_zhi ( int  i,
int  j,
int  k,
Array4< Real > const &  rhs,
Array4< int const > const &  mask,
Array4< Real const > const &  bcoef,
BoundCond  bct,
Real  ,
Array4< Real const > const &  bcval,
Real  fac,
bool  has_bcoef,
int  icomp 
)
noexcept

◆ mllinop_apply_innu_zlo()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_apply_innu_zlo ( int  i,
int  j,
int  k,
Array4< Real > const &  rhs,
Array4< int const > const &  mask,
Array4< Real const > const &  bcoef,
BoundCond  bct,
Real  ,
Array4< Real const > const &  bcval,
Real  fac,
bool  has_bcoef,
int  icomp 
)
noexcept

◆ mllinop_comp_interp_coef0_x() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_comp_interp_coef0_x ( int  side,
Box const &  box,
int  blen,
Array4< Real > const &  f,
Array4< int const > const &  mask,
BoundCond  bct,
Real  bcl,
int  maxorder,
Real  dxinv,
int  icomp 
)
noexcept

◆ mllinop_comp_interp_coef0_x() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_comp_interp_coef0_x ( int  side,
int  i,
int  j,
int  k,
int  blen,
Array4< Real > const &  f,
Array4< int const > const &  mask,
BoundCond  bct,
Real  bcl,
int  maxorder,
Real  dxinv,
int  icomp 
)
noexcept

◆ mllinop_comp_interp_coef0_y() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_comp_interp_coef0_y ( int  side,
Box const &  box,
int  blen,
Array4< Real > const &  f,
Array4< int const > const &  mask,
BoundCond  bct,
Real  bcl,
int  maxorder,
Real  dyinv,
int  icomp 
)
noexcept

◆ mllinop_comp_interp_coef0_y() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_comp_interp_coef0_y ( int  side,
int  i,
int  j,
int  k,
int  blen,
Array4< Real > const &  f,
Array4< int const > const &  mask,
BoundCond  bct,
Real  bcl,
int  maxorder,
Real  dyinv,
int  icomp 
)
noexcept

◆ mllinop_comp_interp_coef0_z() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_comp_interp_coef0_z ( int  side,
Box const &  box,
int  blen,
Array4< Real > const &  f,
Array4< int const > const &  mask,
BoundCond  bct,
Real  bcl,
int  maxorder,
Real  dzinv,
int  icomp 
)
noexcept

◆ mllinop_comp_interp_coef0_z() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mllinop_comp_interp_coef0_z ( int  side,
int  i,
int  j,
int  k,
int  blen,
Array4< Real > const &  f,
Array4< int const > const &  mask,
BoundCond  bct,
Real  bcl,
int  maxorder,
Real  dzinv,
int  icomp 
)
noexcept

◆ mlmg_lin_cc_interp_r2()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlmg_lin_cc_interp_r2 ( Box const &  bx,
Array4< Real > const &  ff,
Array4< Real const > const &  cc,
int  nc 
)
noexcept

◆ mlmg_lin_cc_interp_r4()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlmg_lin_cc_interp_r4 ( Box const &  bx,
Array4< Real > const &  ff,
Array4< Real const > const &  cc,
int  nc 
)
noexcept

◆ mlmg_lin_nd_interp_r2()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlmg_lin_nd_interp_r2 ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  fine,
Array4< Real const > const &  crse 
)
noexcept

◆ mlmg_lin_nd_interp_r4()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlmg_lin_nd_interp_r4 ( int  i,
int  j,
int  k,
int  n,
Array4< Real > const &  fine,
Array4< Real const > const &  crse 
)
noexcept

◆ mlndlap_adotx_aa() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::mlndlap_adotx_aa ( int  i,
int  j,
int  k,
Array4< Real const > const &  x,
Array4< Real const > const &  sig,
Array4< int const > const &  msk,
bool  is_rz,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_adotx_aa() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::mlndlap_adotx_aa ( int  i,
int  j,
int  k,
Array4< Real const > const &  x,
Array4< Real const > const &  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_adotx_c() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::mlndlap_adotx_c ( int  i,
int  j,
int  k,
Array4< Real const > const &  x,
Real  sigma,
Array4< int const > const &  msk,
bool  is_rz,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_adotx_c() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::mlndlap_adotx_c ( int  i,
int  j,
int  k,
Array4< Real const > const &  x,
Real  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_adotx_ha() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::mlndlap_adotx_ha ( int  i,
int  j,
int  k,
Array4< Real const > const &  x,
Array4< Real const > const &  sx,
Array4< Real const > const &  sy,
Array4< int const > const &  msk,
bool  is_rz,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_adotx_ha() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::mlndlap_adotx_ha ( int  i,
int  j,
int  k,
Array4< Real const > const &  x,
Array4< Real const > const &  sx,
Array4< Real const > const &  sy,
Array4< Real const > const &  sz,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_adotx_ha() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::mlndlap_adotx_ha ( int  ,
int  ,
int  ,
Array4< Real const > const &  ,
Array4< Real const > const &  ,
Array4< int const > const &  ,
GpuArray< Real, AMREX_SPACEDIM > const &   
)
noexcept

◆ mlndlap_adotx_sten()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::mlndlap_adotx_sten ( int  i,
int  j,
int  k,
Array4< Real const > const &  x,
Array4< Real const > const &  sten,
Array4< int const > const &  msk 
)
noexcept

◆ mlndlap_any_fine_sync_cells()

AMREX_FORCE_INLINE bool amrex::mlndlap_any_fine_sync_cells ( Box const &  bx,
Array4< int const > const &  msk,
int  fine_flag 
)
noexcept

◆ mlndlap_applybc()

template<typename T >
void amrex::mlndlap_applybc ( Box const &  vbx,
Array4< T > const &  phi,
Box const &  domain,
GpuArray< LinOpBCType, AMREX_SPACEDIM >  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM >  bchi 
)
noexcept

◆ mlndlap_avgdown_coeff_x()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_avgdown_coeff_x ( int  i,
int  j,
int  k,
Array4< Real > const &  crse,
Array4< Real const > const &  fine 
)
noexcept

◆ mlndlap_avgdown_coeff_y()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_avgdown_coeff_y ( int  i,
int  j,
int  k,
Array4< Real > const &  crse,
Array4< Real const > const &  fine 
)
noexcept

◆ mlndlap_avgdown_coeff_z()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_avgdown_coeff_z ( int  i,
int  j,
int  k,
Array4< Real > const &  crse,
Array4< Real const > const &  fine 
)
noexcept

◆ mlndlap_Ax_fine_contrib() [1/2]

template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_Ax_fine_contrib ( int  i,
int  j,
int  k,
Box const &  ndbx,
Box const &  ccbx,
Array4< Real > const &  f,
Array4< Real const > const &  res,
Array4< Real const > const &  rhs,
Array4< Real const > const &  phi,
Array4< Real const > const &  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_Ax_fine_contrib() [2/2]

template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_Ax_fine_contrib ( int  i,
int  j,
int  ,
Box const &  ndbx,
Box const &  ccbx,
Array4< Real > const &  f,
Array4< Real const > const &  res,
Array4< Real const > const &  rhs,
Array4< Real const > const &  phi,
Array4< Real const > const &  sig,
Array4< int const > const &  msk,
bool  is_rz,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_Ax_fine_contrib_cs() [1/2]

template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_Ax_fine_contrib_cs ( int  i,
int  j,
int  k,
Box const &  ndbx,
Box const &  ccbx,
Array4< Real > const &  f,
Array4< Real const > const &  res,
Array4< Real const > const &  rhs,
Array4< Real const > const &  phi,
Real const  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_Ax_fine_contrib_cs() [2/2]

template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_Ax_fine_contrib_cs ( int  i,
int  j,
int  ,
Box const &  ndbx,
Box const &  ccbx,
Array4< Real > const &  f,
Array4< Real const > const &  res,
Array4< Real const > const &  rhs,
Array4< Real const > const &  phi,
Real const  sig,
Array4< int const > const &  msk,
bool  is_rz,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_bc_doit()

template<typename T >
void amrex::mlndlap_bc_doit ( Box const &  vbx,
Array4< T > const &  a,
Box const &  domain,
GpuArray< bool, AMREX_SPACEDIM > const &  bflo,
GpuArray< bool, AMREX_SPACEDIM > const &  bfhi 
)
inlinenoexcept

◆ mlndlap_crse_resid()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_crse_resid ( int  i,
int  j,
int  k,
Array4< Real > const &  resid,
Array4< Real const > const &  rhs,
Array4< int const > const &  msk,
Box const &  nddom,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bchi,
bool  neumann_doubling 
)
noexcept

◆ mlndlap_divu() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_divu ( int  i,
int  j,
int  k,
Array4< Real > const &  rhs,
Array4< Real const > const &  vel,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Box const &  nodal_domain,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bchi,
bool  is_rz 
)
noexcept

◆ mlndlap_divu() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_divu ( int  i,
int  j,
int  k,
Array4< Real > const &  rhs,
Array4< Real const > const &  vel,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Box const &  nodal_domain,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bchi 
)
noexcept

◆ mlndlap_divu_cf_contrib() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_divu_cf_contrib ( int  i,
int  j,
int  k,
Array4< Real > const &  rhs,
Array4< Real const > const &  vel,
Array4< Real const > const &  fc,
Array4< Real const > const &  rhcc,
Array4< int const > const &  dmsk,
Array4< int const > const &  ndmsk,
Array4< int const > const &  ccmsk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Box const &  ccdom_p,
Box const &  veldom,
Box const &  nddom,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bchi 
)
noexcept

◆ mlndlap_divu_cf_contrib() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_divu_cf_contrib ( int  i,
int  j,
int  ,
Array4< Real > const &  rhs,
Array4< Real const > const &  vel,
Array4< Real const > const &  fc,
Array4< Real const > const &  rhcc,
Array4< int const > const &  dmsk,
Array4< int const > const &  ndmsk,
Array4< int const > const &  ccmsk,
bool  is_rz,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Box const &  ccdom_p,
Box const &  veldom,
Box const &  nddom,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bchi 
)
noexcept

◆ mlndlap_divu_cf_contrib() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_divu_cf_contrib ( int  ,
int  ,
int  ,
Array4< Real > const &  ,
Array4< Real const > const &  ,
Array4< Real const > const &  ,
Array4< Real const > const &  ,
Array4< int const > const &  ,
Array4< int const > const &  ,
Array4< int const > const &  ,
GpuArray< Real, AMREX_SPACEDIM > const &  ,
Box const &  ,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  ,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  ,
bool   
)
noexcept

◆ mlndlap_divu_fine_contrib() [1/2]

template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_divu_fine_contrib ( int  i,
int  j,
int  k,
Box const &  fvbx,
Box const &  velbx,
Array4< Real > const &  rhs,
Array4< Real const > const &  vel,
Array4< Real const > const &  frhs,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_divu_fine_contrib() [2/2]

template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_divu_fine_contrib ( int  i,
int  j,
int  ,
Box const &  fvbx,
Box const &  velbx,
Array4< Real > const &  rhs,
Array4< Real const > const &  vel,
Array4< Real const > const &  frhs,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
bool  is_rz 
)
noexcept

◆ mlndlap_fillbc_cc()

template<typename T >
void amrex::mlndlap_fillbc_cc ( Box const &  vbx,
Array4< T > const &  sigma,
Box const &  domain,
GpuArray< LinOpBCType, AMREX_SPACEDIM >  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM >  bchi 
)
noexcept

◆ mlndlap_gauss_seidel_aa() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_gauss_seidel_aa ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_gauss_seidel_aa() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_gauss_seidel_aa ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
bool  is_rz 
)
noexcept

◆ mlndlap_gauss_seidel_c() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_gauss_seidel_c ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  rhs,
Real  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_gauss_seidel_c() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_gauss_seidel_c ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  rhs,
Real  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
bool  is_rz 
)
noexcept

◆ mlndlap_gauss_seidel_ha() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_gauss_seidel_ha ( Box const &  ,
Array4< Real > const &  ,
Array4< Real const > const &  ,
Array4< Real const > const &  ,
Array4< int const > const &  ,
GpuArray< Real, AMREX_SPACEDIM > const &   
)
noexcept

◆ mlndlap_gauss_seidel_ha() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_gauss_seidel_ha ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sx,
Array4< Real const > const &  sy,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
bool  is_rz 
)
noexcept

◆ mlndlap_gauss_seidel_ha() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_gauss_seidel_ha ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sx,
Array4< Real const > const &  sy,
Array4< Real const > const &  sz,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_gauss_seidel_sten()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_gauss_seidel_sten ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sten,
Array4< int const > const &  msk 
)
noexcept

◆ mlndlap_gauss_seidel_with_line_solve_aa() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_gauss_seidel_with_line_solve_aa ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_gauss_seidel_with_line_solve_aa() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_gauss_seidel_with_line_solve_aa ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
bool  is_rz 
)
noexcept

◆ mlndlap_impose_neumann_bc()

void amrex::mlndlap_impose_neumann_bc ( Box const &  bx,
Array4< Real > const &  rhs,
Box const &  nddom,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  lobc,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  hibc 
)
inlinenoexcept

◆ mlndlap_interpadd_aa()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_interpadd_aa ( int  i,
int  j,
int  k,
Array4< Real > const &  fine,
Array4< Real const > const &  crse,
Array4< Real const > const &  sig,
Array4< int const > const &  msk 
)
noexcept

◆ mlndlap_interpadd_c()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_interpadd_c ( int  i,
int  j,
int  k,
Array4< Real > const &  fine,
Array4< Real const > const &  crse,
Array4< int const > const &  msk 
)
noexcept

◆ mlndlap_interpadd_ha() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_interpadd_ha ( int  i,
int  j,
int  k,
Array4< Real > const &  fine,
Array4< Real const > const &  crse,
Array4< Real const > const &  sigx,
Array4< Real const > const &  sigy,
Array4< Real const > const &  sigz,
Array4< int const > const &  msk 
)
noexcept

◆ mlndlap_interpadd_ha() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_interpadd_ha ( int  i,
int  j,
int  ,
Array4< Real > const &  fine,
Array4< Real const > const &  crse,
Array4< Real const > const &  sigx,
Array4< Real const > const &  sigy,
Array4< int const > const &  msk 
)
noexcept

◆ mlndlap_interpadd_ha() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_interpadd_ha ( int  ,
int  ,
int  ,
Array4< Real > const &  ,
Array4< Real const > const &  ,
Array4< Real const > const &  ,
Array4< int const > const &   
)
noexcept

◆ mlndlap_interpadd_rap()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_interpadd_rap ( int  i,
int  j,
int  k,
Array4< Real > const &  fine,
Array4< Real const > const &  crse,
Array4< Real const > const &  sten,
Array4< int const > const &  msk 
)
noexcept

◆ mlndlap_jacobi_aa() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_jacobi_aa ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  Ax,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_jacobi_aa() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_jacobi_aa ( int  i,
int  j,
int  k,
Array4< Real > const &  sol,
Real  Ax,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_jacobi_c() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_jacobi_c ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  Ax,
Array4< Real const > const &  rhs,
Real  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_jacobi_c() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_jacobi_c ( int  i,
int  j,
int  k,
Array4< Real > const &  sol,
Real  Ax,
Array4< Real const > const &  rhs,
Real  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_jacobi_ha() [1/6]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_jacobi_ha ( Box const &  ,
Array4< Real > const &  ,
Array4< Real const > const &  ,
Array4< Real const > const &  ,
Array4< Real const > const &  ,
Array4< int const > const &  ,
GpuArray< Real, AMREX_SPACEDIM > const &   
)
noexcept

◆ mlndlap_jacobi_ha() [2/6]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_jacobi_ha ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  Ax,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sx,
Array4< Real const > const &  sy,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_jacobi_ha() [3/6]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_jacobi_ha ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  Ax,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sx,
Array4< Real const > const &  sy,
Array4< Real const > const &  sz,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_jacobi_ha() [4/6]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_jacobi_ha ( int  i,
int  j,
int  k,
Array4< Real > const &  sol,
Real  Ax,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sx,
Array4< Real const > const &  sy,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_jacobi_ha() [5/6]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_jacobi_ha ( int  i,
int  j,
int  k,
Array4< Real > const &  sol,
Real  Ax,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sx,
Array4< Real const > const &  sy,
Array4< Real const > const &  sz,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_jacobi_ha() [6/6]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_jacobi_ha ( int  ,
int  ,
int  ,
Array4< Real > const &  ,
Real  ,
Array4< Real const > const &  ,
Array4< Real const > const &  ,
Array4< int const > const &  ,
GpuArray< Real, AMREX_SPACEDIM > const &   
)
noexcept

◆ mlndlap_jacobi_sten() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_jacobi_sten ( Box const &  bx,
Array4< Real > const &  sol,
Array4< Real const > const &  Ax,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sten,
Array4< int const > const &  msk 
)
noexcept

◆ mlndlap_jacobi_sten() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_jacobi_sten ( int  i,
int  j,
int  k,
Array4< Real > const &  sol,
Real  Ax,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sten,
Array4< int const > const &  msk 
)
noexcept

◆ mlndlap_mknewu() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_mknewu ( int  i,
int  j,
int  k,
Array4< Real > const &  u,
Array4< Real const > const &  p,
Array4< Real const > const &  sig,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
bool  is_rz 
)
noexcept

◆ mlndlap_mknewu() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_mknewu ( int  i,
int  j,
int  k,
Array4< Real > const &  u,
Array4< Real const > const &  p,
Array4< Real const > const &  sig,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_mknewu_c() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_mknewu_c ( int  i,
int  j,
int  k,
Array4< Real > const &  u,
Array4< Real const > const &  p,
Real  sig,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
bool  is_rz 
)
noexcept

◆ mlndlap_mknewu_c() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_mknewu_c ( int  i,
int  j,
int  k,
Array4< Real > const &  u,
Array4< Real const > const &  p,
Real  sig,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_normalize_aa()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_normalize_aa ( int  i,
int  j,
int  k,
Array4< Real > const &  x,
Array4< Real const > const &  sig,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_normalize_ha() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_normalize_ha ( int  i,
int  j,
int  k,
Array4< Real > const &  x,
Array4< Real const > const &  sx,
Array4< Real const > const &  sy,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_normalize_ha() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_normalize_ha ( int  i,
int  j,
int  k,
Array4< Real > const &  x,
Array4< Real const > const &  sx,
Array4< Real const > const &  sy,
Array4< Real const > const &  sz,
Array4< int const > const &  msk,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_normalize_ha() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_normalize_ha ( int  ,
int  ,
int  ,
Array4< Real > const &  ,
Array4< Real const > const &  ,
Array4< int const > const &  ,
GpuArray< Real, AMREX_SPACEDIM > const &   
)
noexcept

◆ mlndlap_normalize_sten()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_normalize_sten ( int  i,
int  j,
int  k,
Array4< Real > const &  x,
Array4< Real const > const &  sten,
Array4< int const > const &  msk,
Real  s0_norm0 
)
noexcept

◆ mlndlap_res_cf_contrib() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_res_cf_contrib ( int  i,
int  j,
int  k,
Array4< Real > const &  res,
Array4< Real const > const &  phi,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sig,
Array4< int const > const &  dmsk,
Array4< int const > const &  ndmsk,
Array4< int const > const &  ccmsk,
Array4< Real const > const &  fc,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Box const &  ccdom_p,
Box const &  nddom,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bchi,
bool  neumann_doubling 
)
noexcept

◆ mlndlap_res_cf_contrib() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_res_cf_contrib ( int  i,
int  j,
int  ,
Array4< Real > const &  res,
Array4< Real const > const &  phi,
Array4< Real const > const &  rhs,
Array4< Real const > const &  sig,
Array4< int const > const &  dmsk,
Array4< int const > const &  ndmsk,
Array4< int const > const &  ccmsk,
Array4< Real const > const &  fc,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Box const &  ccdom_p,
Box const &  nddom,
bool  is_rz,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bchi,
bool  neumann_doubling 
)
noexcept

◆ mlndlap_res_cf_contrib() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_res_cf_contrib ( int  ,
int  ,
int  ,
Array4< Real > const &  ,
Array4< Real const > const &  ,
Array4< Real const > const &  ,
Array4< Real const > const &  ,
Array4< int const > const &  ,
Array4< int const > const &  ,
Array4< int const > const &  ,
Array4< Real const > const &  ,
GpuArray< Real, AMREX_SPACEDIM > const &  ,
Box const &  ,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  ,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  ,
bool   
)
noexcept

◆ mlndlap_res_cf_contrib_cs() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_res_cf_contrib_cs ( int  i,
int  j,
int  k,
Array4< Real > const &  res,
Array4< Real const > const &  phi,
Array4< Real const > const &  rhs,
Real const  sig,
Array4< int const > const &  dmsk,
Array4< int const > const &  ndmsk,
Array4< int const > const &  ccmsk,
Array4< Real const > const &  fc,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Box const &  ccdom_p,
Box const &  nddom,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bchi,
bool  neumann_doubling 
)
noexcept

◆ mlndlap_res_cf_contrib_cs() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_res_cf_contrib_cs ( int  i,
int  j,
int  ,
Array4< Real > const &  res,
Array4< Real const > const &  phi,
Array4< Real const > const &  rhs,
Real const  sig,
Array4< int const > const &  dmsk,
Array4< int const > const &  ndmsk,
Array4< int const > const &  ccmsk,
Array4< Real const > const &  fc,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Box const &  ccdom_p,
Box const &  nddom,
bool  is_rz,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bchi,
bool  neumann_doubling 
)
noexcept

◆ mlndlap_res_cf_contrib_cs() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_res_cf_contrib_cs ( int  ,
int  ,
int  ,
Array4< Real > const &  ,
Array4< Real const > const &  ,
Array4< Real const > const &  ,
Real  ,
Array4< int const > const &  ,
Array4< int const > const &  ,
Array4< int const > const &  ,
Array4< Real const > const &  ,
GpuArray< Real, AMREX_SPACEDIM > const &  ,
Box const &  ,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  ,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  ,
bool   
)
noexcept

◆ mlndlap_restriction() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_restriction ( int  i,
int  j,
int  k,
Array4< Real > const &  crse,
Array4< Real const > const &  fine,
Array4< int const > const &  msk 
)
noexcept

◆ mlndlap_restriction() [2/2]

template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_restriction ( int  i,
int  j,
int  k,
Array4< Real > const &  crse,
Array4< Real const > const &  fine,
Array4< int const > const &  msk,
Box const &  fdom,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bchi 
)
noexcept

◆ mlndlap_restriction_rap()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_restriction_rap ( int  i,
int  j,
int  k,
Array4< Real > const &  crse,
Array4< Real const > const &  fine,
Array4< Real const > const &  sten,
Array4< int const > const &  msk 
)
noexcept

◆ mlndlap_rhcc()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::mlndlap_rhcc ( int  i,
int  j,
int  k,
Array4< Real const > const &  rhcc,
Array4< int const > const &  msk 
)
noexcept

◆ mlndlap_rhcc_fine_contrib()

template<int rr>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_rhcc_fine_contrib ( int  i,
int  j,
int  k,
Box const &  ccbx,
Array4< Real > const &  rhs,
Array4< Real const > const &  cc,
Array4< int const > const &  msk 
)
noexcept

◆ mlndlap_semi_avgdown_coeff()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_semi_avgdown_coeff ( int  i,
int  j,
int  k,
Array4< Real > const &  crse,
Array4< Real const > const &  fine,
int  idir 
)
noexcept

◆ mlndlap_semi_interpadd_aa()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_semi_interpadd_aa ( int  i,
int  j,
int  k,
Array4< Real > const &  fine,
Array4< Real const > const &  crse,
Array4< Real const > const &  sig,
Array4< int const > const &  msk,
int  idir 
)
noexcept

◆ mlndlap_semi_restriction()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_semi_restriction ( int  i,
int  j,
int  k,
Array4< Real > const &  crse,
Array4< Real const > const &  fine,
Array4< int const > const &  msk,
int  idir 
)
noexcept

◆ mlndlap_set_dirichlet_mask()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_set_dirichlet_mask ( Box const &  bx,
Array4< int > const &  dmsk,
Array4< int const > const &  omsk,
Box const &  dom,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bchi 
)
noexcept

◆ mlndlap_set_dot_mask()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_set_dot_mask ( Box const &  bx,
Array4< Real > const &  dmsk,
Array4< int const > const &  omsk,
Box const &  dom,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bclo,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  bchi 
)
noexcept

◆ mlndlap_set_nodal_mask()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_set_nodal_mask ( int  i,
int  j,
int  k,
Array4< int > const &  nmsk,
Array4< int const > const &  cmsk 
)
noexcept

◆ mlndlap_set_stencil()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_set_stencil ( Box const &  bx,
Array4< Real > const &  sten,
Array4< Real const > const &  sigma,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndlap_set_stencil_s0()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_set_stencil_s0 ( int  i,
int  j,
int  k,
Array4< Real > const &  sten 
)
noexcept

◆ mlndlap_stencil_rap()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_stencil_rap ( int  i,
int  j,
int  k,
Array4< Real > const &  csten,
Array4< Real const > const &  fsten 
)
noexcept

◆ mlndlap_unimpose_neumann_bc()

void amrex::mlndlap_unimpose_neumann_bc ( Box const &  bx,
Array4< Real > const &  rhs,
Box const &  nddom,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  lobc,
GpuArray< LinOpBCType, AMREX_SPACEDIM > const &  hibc 
)
inlinenoexcept

◆ mlndlap_zero_fine()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndlap_zero_fine ( int  i,
int  j,
int  k,
Array4< Real > const &  phi,
Array4< int const > const &  msk,
int  fine_flag 
)
noexcept

◆ mlndtslap_adotx() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndtslap_adotx ( Box const &  b,
Array4< Real > const &  y,
Array4< Real const > const &  x,
GpuArray< Real, 6 > const &  s,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndtslap_adotx() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndtslap_adotx ( Box const &  b,
Array4< Real > const &  y,
Array4< Real const > const &  x,
GpuArray< Real, 3 > const &  s,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndtslap_gauss_seidel() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndtslap_gauss_seidel ( Box const &  b,
Array4< Real > const &  sol,
Array4< Real const > const &  rhs,
Array4< int const > const &  msk,
GpuArray< Real, 6 > const &  s,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndtslap_gauss_seidel() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndtslap_gauss_seidel ( Box const &  b,
Array4< Real > const &  sol,
Array4< Real const > const &  rhs,
Array4< int const > const &  msk,
GpuArray< Real, 3 > const &  s,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndtslap_interpadd()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndtslap_interpadd ( int  i,
int  j,
int  k,
Array4< Real > const &  fine,
Array4< Real const > const &  crse,
Array4< int const > const &  msk 
)
noexcept

◆ mlndtslap_normalize() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndtslap_normalize ( Box const &  b,
Array4< Real > const &  phi,
Array4< int const > const &  msk,
GpuArray< Real, 6 > const &  s,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlndtslap_normalize() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlndtslap_normalize ( Box const &  b,
Array4< Real > const &  phi,
Array4< int const > const &  msk,
GpuArray< Real, 3 > const &  s,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mlpoisson_adotx() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_adotx ( int  i,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Real  dhx 
)
noexcept

◆ mlpoisson_adotx() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_adotx ( int  i,
int  j,
int  k,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Real  dhx,
Real  dhy,
Real  dhz 
)
noexcept

◆ mlpoisson_adotx_m()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_adotx_m ( int  i,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Real  dhx,
Real  dx,
Real  probxlo 
)
noexcept

◆ mlpoisson_adotx_os() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_adotx_os ( int  i,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< int const > const &  osm,
Real  dhx 
)
noexcept

◆ mlpoisson_adotx_os() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_adotx_os ( int  i,
int  j,
int  k,
Array4< Real > const &  y,
Array4< Real const > const &  x,
Array4< int const > const &  osm,
Real  dhx,
Real  dhy,
Real  dhz 
)
noexcept

◆ mlpoisson_flux_x()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_flux_x ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  sol,
Real  dxinv 
)
noexcept

◆ mlpoisson_flux_x_m()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_flux_x_m ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  sol,
Real  dxinv,
Real  dx,
Real  probxlo 
)
noexcept

◆ mlpoisson_flux_xface()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_flux_xface ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  sol,
Real  dxinv,
int  xlen 
)
noexcept

◆ mlpoisson_flux_xface_m()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_flux_xface_m ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  sol,
Real  dxinv,
int  xlen,
Real  dx,
Real  probxlo 
)
noexcept

◆ mlpoisson_flux_y()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_flux_y ( Box const &  box,
Array4< Real > const &  fy,
Array4< Real const > const &  sol,
Real  dyinv 
)
noexcept

◆ mlpoisson_flux_yface()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_flux_yface ( Box const &  box,
Array4< Real > const &  fy,
Array4< Real const > const &  sol,
Real  dyinv,
int  ylen 
)
noexcept

◆ mlpoisson_flux_z()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_flux_z ( Box const &  box,
Array4< Real > const &  fz,
Array4< Real const > const &  sol,
Real  dzinv 
)
noexcept

◆ mlpoisson_flux_zface()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_flux_zface ( Box const &  box,
Array4< Real > const &  fz,
Array4< Real const > const &  sol,
Real  dzinv,
int  zlen 
)
noexcept

◆ mlpoisson_gsrb() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_gsrb ( Box const &  box,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  dhx,
Array4< Real const > const &  f0,
Array4< int const > const &  m0,
Array4< Real const > const &  f1,
Array4< int const > const &  m1,
Box const &  vbox,
int  redblack 
)
noexcept

◆ mlpoisson_gsrb() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_gsrb ( Box const &  box,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  dhx,
Real  dhy,
Real  dhz,
Array4< Real const > const &  f0,
Array4< int const > const &  m0,
Array4< Real const > const &  f1,
Array4< int const > const &  m1,
Array4< Real const > const &  f2,
Array4< int const > const &  m2,
Array4< Real const > const &  f3,
Array4< int const > const &  m3,
Array4< Real const > const &  f4,
Array4< int const > const &  m4,
Array4< Real const > const &  f5,
Array4< int const > const &  m5,
Box const &  vbox,
int  redblack 
)
noexcept

◆ mlpoisson_gsrb_m()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_gsrb_m ( Box const &  box,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Real  dhx,
Array4< Real const > const &  f0,
Array4< int const > const &  m0,
Array4< Real const > const &  f1,
Array4< int const > const &  m1,
Box const &  vbox,
int  redblack,
Real  dx,
Real  probxlo 
)
noexcept

◆ mlpoisson_gsrb_os() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_gsrb_os ( Box const &  box,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Array4< int const > const &  osm,
Real  dhx,
Array4< Real const > const &  f0,
Array4< int const > const &  m0,
Array4< Real const > const &  f1,
Array4< int const > const &  m1,
Box const &  vbox,
int  redblack 
)
noexcept

◆ mlpoisson_gsrb_os() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_gsrb_os ( Box const &  box,
Array4< Real > const &  phi,
Array4< Real const > const &  rhs,
Array4< int const > const &  osm,
Real  dhx,
Real  dhy,
Real  dhz,
Array4< Real const > const &  f0,
Array4< int const > const &  m0,
Array4< Real const > const &  f1,
Array4< int const > const &  m1,
Array4< Real const > const &  f2,
Array4< int const > const &  m2,
Array4< Real const > const &  f3,
Array4< int const > const &  m3,
Array4< Real const > const &  f4,
Array4< int const > const &  m4,
Array4< Real const > const &  f5,
Array4< int const > const &  m5,
Box const &  vbox,
int  redblack 
)
noexcept

◆ mlpoisson_normalize()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mlpoisson_normalize ( int  i,
int  ,
int  ,
Array4< Real > const &  x,
Real  dhx,
Real  dx,
Real  probxlo 
)
noexcept

◆ mltensor_cross_terms() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mltensor_cross_terms ( Box const &  box,
Array4< Real > const &  Ax,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
Array4< Real const > const &  fz,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  bscalar 
)
noexcept

◆ mltensor_cross_terms() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mltensor_cross_terms ( Box const &  box,
Array4< Real > const &  Ax,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  bscalar 
)
noexcept

◆ mltensor_cross_terms_fx()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mltensor_cross_terms_fx ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  vel,
Array4< Real const > const &  etax,
Array4< Real const > const &  kapx,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mltensor_cross_terms_fy()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mltensor_cross_terms_fy ( Box const &  box,
Array4< Real > const &  fy,
Array4< Real const > const &  vel,
Array4< Real const > const &  etay,
Array4< Real const > const &  kapy,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mltensor_cross_terms_fz()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mltensor_cross_terms_fz ( Box const &  box,
Array4< Real > const &  fz,
Array4< Real const > const &  vel,
Array4< Real const > const &  etaz,
Array4< Real const > const &  kapz,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mltensor_cross_terms_os() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mltensor_cross_terms_os ( Box const &  box,
Array4< Real > const &  Ax,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
Array4< int const > const &  osm,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  bscalar 
)
noexcept

◆ mltensor_cross_terms_os() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mltensor_cross_terms_os ( Box const &  box,
Array4< Real > const &  Ax,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
Array4< Real const > const &  fz,
Array4< int const > const &  osm,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Real  bscalar 
)
noexcept

◆ mltensor_fill_corners() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mltensor_fill_corners ( int  icorner,
Box const &  vbox,
Array4< Real > const &  vel,
Array4< int const > const &  mxlo,
Array4< int const > const &  mylo,
Array4< int const > const &  mxhi,
Array4< int const > const &  myhi,
Array4< Real const > const &  bcvalxlo,
Array4< Real const > const &  bcvalylo,
Array4< Real const > const &  bcvalxhi,
Array4< Real const > const &  bcvalyhi,
GpuArray< BoundCond, 2 *AMREX_SPACEDIM *AMREX_SPACEDIM > const &  bct,
GpuArray< Real, 2 *AMREX_SPACEDIM *AMREX_SPACEDIM > const &  bcl,
int  inhomog,
int  maxorder,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Box const &  domain 
)
noexcept

◆ mltensor_fill_corners() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mltensor_fill_corners ( int  icorner,
Box const &  vbox,
Array4< Real > const &  vel,
Array4< int const > const &  mxlo,
Array4< int const > const &  mylo,
Array4< int const > const &  mzlo,
Array4< int const > const &  mxhi,
Array4< int const > const &  myhi,
Array4< int const > const &  mzhi,
Array4< Real const > const &  bcvalxlo,
Array4< Real const > const &  bcvalylo,
Array4< Real const > const &  bcvalzlo,
Array4< Real const > const &  bcvalxhi,
Array4< Real const > const &  bcvalyhi,
Array4< Real const > const &  bcvalzhi,
GpuArray< BoundCond, 2 *AMREX_SPACEDIM *AMREX_SPACEDIM > const &  bct,
GpuArray< Real, 2 *AMREX_SPACEDIM *AMREX_SPACEDIM > const &  bcl,
int  inhomog,
int  maxorder,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Box const &  domain 
)
noexcept

◆ mltensor_fill_edges()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mltensor_fill_edges ( int  iedge,
Box const &  vbox,
Array4< Real > const &  vel,
Array4< int const > const &  mxlo,
Array4< int const > const &  mylo,
Array4< int const > const &  mzlo,
Array4< int const > const &  mxhi,
Array4< int const > const &  myhi,
Array4< int const > const &  mzhi,
Array4< Real const > const &  bcvalxlo,
Array4< Real const > const &  bcvalylo,
Array4< Real const > const &  bcvalzlo,
Array4< Real const > const &  bcvalxhi,
Array4< Real const > const &  bcvalyhi,
Array4< Real const > const &  bcvalzhi,
GpuArray< BoundCond, 2 *AMREX_SPACEDIM *AMREX_SPACEDIM > const &  bct,
GpuArray< Real, 2 *AMREX_SPACEDIM *AMREX_SPACEDIM > const &  bcl,
int  inhomog,
int  maxorder,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv,
Box const &  domain 
)
noexcept

◆ mltensor_vel_grads_fx()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mltensor_vel_grads_fx ( Box const &  box,
Array4< Real > const &  fx,
Array4< Real const > const &  vel,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mltensor_vel_grads_fy()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mltensor_vel_grads_fy ( Box const &  box,
Array4< Real > const &  fy,
Array4< Real const > const &  vel,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ mltensor_vel_grads_fz()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::mltensor_vel_grads_fz ( Box const &  box,
Array4< Real > const &  fz,
Array4< Real const > const &  vel,
GpuArray< Real, AMREX_SPACEDIM > const &  dxinv 
)
noexcept

◆ MultiFabFileFullPrefix()

std::string amrex::MultiFabFileFullPrefix ( int  level,
const std::string &  plotfilename,
const std::string &  levelPrefix,
const std::string &  mfPrefix 
)

return the full path multifab prefix, e.g., plt00005/Level_5/Cell

◆ MultiFabHeaderPath()

std::string amrex::MultiFabHeaderPath ( int  level,
const std::string &  levelPrefix,
const std::string &  mfPrefix 
)

return the path of the multifab to write to the header, e.g., Level_5/Cell

◆ MultiLevelToBlueprint() [1/2]

void amrex::MultiLevelToBlueprint ( int  n_levels,
const Vector< const MultiFab * > &  mfs,
const Vector< std::string > &  varnames,
const Vector< Geometry > &  geoms,
Real  time_value,
const Vector< int > &  level_steps,
const Vector< IntVect > &  ref_ratio,
conduit::Node &  bp_mesh 
)

◆ MultiLevelToBlueprint() [2/2]

void amrex::MultiLevelToBlueprint ( int  n_levels,
const Vector< const MultiFab * > &  mfs,
const Vector< std::string > &  varnames,
const Vector< Geometry > &  geoms,
Real  time_value,
const Vector< int > &  level_steps,
const Vector< IntVect > &  ref_ratio,
Node &  res 
)

◆ Multiply() [1/2]

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::Multiply ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src,
int  srccomp,
int  dstcomp,
int  numcomp,
const IntVect nghost 
)

◆ Multiply() [2/2]

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::Multiply ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src,
int  srccomp,
int  dstcomp,
int  numcomp,
int  nghost 
)

◆ nBytesOwned() [1/2]

template<typename T >
Long amrex::nBytesOwned ( BaseFab< T > const &  fab)
noexcept

◆ nBytesOwned() [2/2]

template<typename T , typename std::enable_if<!IsBaseFab< T >::value, int >::type = 0>
Long amrex::nBytesOwned ( T const &  )
noexcept

◆ NeedToTouchUpPhysCorners()

static bool amrex::NeedToTouchUpPhysCorners ( const Geometry geom)
static

◆ Nestsets()

bool amrex::Nestsets ( const int  level,
const int  n_levels,
const FArrayBox fab,
const Vector< const BoxArray * >  box_arrays,
const Vector< IntVect > &  ref_ratio,
const Vector< int > &  domain_offsets,
conduit::Node &  nestset 
)

◆ NHops()

int amrex::NHops ( const Box tbox,
const IntVect ivfrom,
const IntVect ivto 
)

◆ NItemsPerBin()

void amrex::NItemsPerBin ( int  totalItems,
Vector< int > &  binCounts 
)

Fill binCounts with the number of items for each bin. The remainder items are randomly assigned.

◆ nodebilin_interp()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::nodebilin_interp ( Box const &  bx,
Array4< T > const &  fine,
const int  fcomp,
const int  ncomp,
Array4< T const > const &  slope,
Array4< T const > const &  crse,
const int  ccomp,
IntVect const &  ratio 
)
noexcept

◆ nodebilin_slopes()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::nodebilin_slopes ( Box const &  bx,
Array4< T > const &  slope,
Array4< T const > const &  u,
const int  icomp,
const int  ncomp,
IntVect const &  ratio 
)
noexcept

◆ norm()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE T amrex::norm ( const GpuComplex< T > &  a_z)
noexcept

Return the norm (magnitude squared) of a complex number.

◆ numParticlesOutOfRange() [1/6]

template<class Iterator , std::enable_if_t< IsParticleIterator< Iterator >::value, int > foo = 0>
int amrex::numParticlesOutOfRange ( Iterator const &  pti,
int  nGrow 
)

Returns the number of particles that are more than nGrow cells from the box correspond to the input iterator.

Template Parameters
Iteratoran AMReX ParticleIterator
Parameters
theiterator pointing to the current grid/tile to test
nGrowthe number of grow cells allowed.

◆ numParticlesOutOfRange() [2/6]

template<class Iterator , std::enable_if_t< IsParticleIterator< Iterator >::value, int > foo = 0>
int amrex::numParticlesOutOfRange ( Iterator const &  pti,
IntVect  nGrow 
)

Returns the number of particles that are more than nGrow cells from the box correspond to the input iterator.

Template Parameters
Iteratoran AMReX ParticleIterator
Parameters
theiterator pointing to the current grid/tile to test
nGrowthe number of grow cells allowed.

◆ numParticlesOutOfRange() [3/6]

template<class PC , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
int amrex::numParticlesOutOfRange ( PC const &  pc,
int  lev_min,
int  lev_max,
int  nGrow 
)

Returns the number of particles that are more than nGrow cells from their assigned box.

This version goes over only the specified levels

Template Parameters
PCa type of AMReX particle container.
Parameters
pcthe particle container to test
lev_minthe minimum level to test
lev_maxthe maximum level to test
nGrowthe number of grow cells allowed.

◆ numParticlesOutOfRange() [4/6]

template<class PC , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
int amrex::numParticlesOutOfRange ( PC const &  pc,
int  lev_min,
int  lev_max,
IntVect  nGrow 
)

Returns the number of particles that are more than nGrow cells from their assigned box.

This version goes over only the specified levels

Template Parameters
PCa type of AMReX particle container.
Parameters
pcthe particle container to test
lev_minthe minimum level to test
lev_maxthe maximum level to test
nGrowthe number of grow cells allowed.

◆ numParticlesOutOfRange() [5/6]

template<class PC , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
int amrex::numParticlesOutOfRange ( PC const &  pc,
int  nGrow 
)

Returns the number of particles that are more than nGrow cells from their assigned box.

This version tests over all levels.

Template Parameters
PCa type of AMReX particle container.
Parameters
pcthe particle container to test
nGrowthe number of grow cells allowed.

◆ numParticlesOutOfRange() [6/6]

template<class PC , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
int amrex::numParticlesOutOfRange ( PC const &  pc,
IntVect  nGrow 
)

Returns the number of particles that are more than nGrow cells from their assigned box.

This version tests over all levels.

Template Parameters
PCa type of AMReX particle container.
Parameters
pcthe particle container to test
nGrowthe number of grow cells allowed.

◆ numTilesInBox()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE int amrex::numTilesInBox ( const Box box,
const bool  a_do_tiling,
const IntVect a_tile_size 
)

◆ ONES_COMP_NEG()

void amrex::ONES_COMP_NEG ( Long &  n,
int  nb,
Long  incr 
)
inline

◆ openFile()

static void amrex::openFile ( )
static

◆ operator*() [1/6]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator* ( const GpuComplex< T > &  a_x,
const GpuComplex< T > &  a_y 
)
noexcept

Multiply two complex numbers.

◆ operator*() [2/6]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator* ( const GpuComplex< T > &  a_x,
const T &  a_y 
)
noexcept

Multiply a complex number by a real one.

◆ operator*() [3/6]

AMREX_GPU_HOST_DEVICE RealVect amrex::operator* ( const RealVect s,
const RealVect p 
)
inlinenoexcept

Returns component-wise product of s and p.

◆ operator*() [4/6]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator* ( const T &  a_x,
const GpuComplex< T > &  a_y 
)
noexcept

Multiply a real number by a complex one.

◆ operator*() [5/6]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::operator* ( int  s,
const IntVect p 
)
noexcept

Returns p * s.

◆ operator*() [6/6]

AMREX_GPU_HOST_DEVICE RealVect amrex::operator* ( Real  s,
const RealVect p 
)
inlinenoexcept

Returns a RealVect that is a RealVect p with each component multiplied by a scalar s.

◆ operator+() [1/7]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator+ ( const GpuComplex< T > &  a_x)

Identity operation on a complex number.

◆ operator+() [2/7]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator+ ( const GpuComplex< T > &  a_x,
const GpuComplex< T > &  a_y 
)
noexcept

Add two complex numbers.

◆ operator+() [3/7]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator+ ( const GpuComplex< T > &  a_x,
const T &  a_y 
)
noexcept

Add a real number to a complex one.

◆ operator+() [4/7]

AMREX_GPU_HOST_DEVICE RealVect amrex::operator+ ( const RealVect s,
const RealVect p 
)
inlinenoexcept

Returns component-wise sum of RealVects s and p.

◆ operator+() [5/7]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator+ ( const T &  a_x,
const GpuComplex< T > &  a_y 
)
noexcept

Add a complex number to a real one.

◆ operator+() [6/7]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::operator+ ( int  s,
const IntVect p 
)
noexcept

Returns p + s.

◆ operator+() [7/7]

AMREX_GPU_HOST_DEVICE RealVect amrex::operator+ ( Real  s,
const RealVect p 
)
inlinenoexcept

Returns a RealVect that is a RealVect p with a scalar s added to each component.

◆ operator-() [1/7]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator- ( const GpuComplex< T > &  a_x)

Negate a complex number.

◆ operator-() [2/7]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator- ( const GpuComplex< T > &  a_x,
const GpuComplex< T > &  a_y 
)
noexcept

Subtract two complex numbers.

◆ operator-() [3/7]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator- ( const GpuComplex< T > &  a_x,
const T &  a_y 
)
noexcept

Subtract a real number from a complex one.

◆ operator-() [4/7]

AMREX_GPU_HOST_DEVICE RealVect amrex::operator- ( const RealVect s,
const RealVect p 
)
inlinenoexcept

Returns s - p.

◆ operator-() [5/7]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator- ( const T &  a_x,
const GpuComplex< T > &  a_y 
)
noexcept

Subtract a complex number from a real one.

◆ operator-() [6/7]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE AMREX_GPU_HOST_DEVICE IntVect amrex::operator- ( int  s,
const IntVect p 
)
noexcept

Returns -p + s.

◆ operator-() [7/7]

AMREX_GPU_HOST_DEVICE RealVect amrex::operator- ( Real  s,
const RealVect p 
)
inlinenoexcept

Returns s - p.

◆ operator/() [1/5]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator/ ( const GpuComplex< T > &  a_x,
const GpuComplex< T > &  a_y 
)
noexcept

Divide a complex number by another one.

◆ operator/() [2/5]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator/ ( const GpuComplex< T > &  a_x,
const T &  a_y 
)
noexcept

Divide a complex number by a real.

◆ operator/() [3/5]

AMREX_GPU_HOST_DEVICE RealVect amrex::operator/ ( const RealVect s,
const RealVect p 
)
inlinenoexcept

Returns component-wise quotient p / s.

◆ operator/() [4/5]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::operator/ ( const T &  a_x,
const GpuComplex< T > &  a_y 
)
noexcept

Divide a real number by a complex one.

◆ operator/() [5/5]

AMREX_GPU_HOST_DEVICE RealVect amrex::operator/ ( Real  s,
const RealVect p 
)
inlinenoexcept

Returns a RealVect that is a RealVect p with each component divided by a scalar s.

◆ operator<<() [1/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const Geometry g 
)

Nice ASCII output.

◆ operator<<() [2/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const RealBox b 
)

Nice ASCII output.

◆ operator<<() [3/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
AmrMesh const &  amr_mesh 
)

◆ operator<<() [4/42]

template<typename T >
std::ostream& amrex::operator<< ( std::ostream &  os,
Array< T, AMREX_SPACEDIM > const &  a 
)

◆ operator<<() [5/42]

template<typename T >
std::ostream& amrex::operator<< ( std::ostream &  os,
const Array4< T > &  a 
)

◆ operator<<() [6/42]

std::ostream& amrex::operator<< ( std::ostream &  os,
const BCRec b 
)

◆ operator<<() [7/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const Box b 
)

Write an ASCII representation to the ostream.

◆ operator<<() [8/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const BoxArray ba 
)

Write a BoxArray to an ostream in ASCII format.

◆ operator<<() [9/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const BoxArray::RefID id 
)

◆ operator<<() [10/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const BoxDomain bd 
)

Output a BoxDomain to an ostream is ASCII format.

◆ operator<<() [11/42]

std::ostream& amrex::operator<< ( std::ostream &  os,
const BoxList blist 
)

Output a BoxList to an ostream in ASCII format.

◆ operator<<() [12/42]

std::ostream& amrex::operator<< ( std::ostream &  os,
const CoordSys c 
)

◆ operator<<() [13/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const dim3 &  d 
)

◆ operator<<() [14/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const DistributionMapping pmap 
)

Our output operator.

◆ operator<<() [15/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const DistributionMapping::RefID id 
)

◆ operator<<() [16/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const EBCellFlag flag 
)

◆ operator<<() [17/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const ErrorList elst 
)

◆ operator<<() [18/42]

std::ostream& amrex::operator<< ( std::ostream &  os,
const FabArrayBase::BDKey id 
)

◆ operator<<() [19/42]

std::ostream& amrex::operator<< ( std::ostream &  os,
const FArrayBox f 
)

◆ operator<<() [20/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const IndexType it 
)

Write an IndexType to an ostream in ASCII.

◆ operator<<() [21/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const IntDescriptor id 
)

Write out an IntDescriptor to an ostream in ASCII.

◆ operator<<() [22/42]

std::ostream& amrex::operator<< ( std::ostream &  os,
const IntVect p 
)

◆ operator<<() [23/42]

std::ostream& amrex::operator<< ( std::ostream &  os,
const LinOpBCType &  t 
)

◆ operator<<() [24/42]

std::ostream& amrex::operator<< ( std::ostream &  os,
const Mask m 
)

◆ operator<<() [25/42]

std::ostream& amrex::operator<< ( std::ostream &  os,
const MemProfiler::Builds builds 
)

◆ operator<<() [26/42]

std::ostream& amrex::operator<< ( std::ostream &  os,
const MemProfiler::Bytes bytes 
)

◆ operator<<() [27/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const Orientation o 
)

Write to an ostream in ASCII format.

◆ operator<<() [28/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const ParmParse::PP_entry pp 
)

◆ operator<<() [29/42]

template<int NReal = 0, int NInt = 0>
std::ostream& amrex::operator<< ( std::ostream &  os,
const Particle< 0, 0 > &  p 
)

◆ operator<<() [30/42]

template<int NInt>
std::ostream& amrex::operator<< ( std::ostream &  os,
const Particle< 0, NInt > &  p 
)

◆ operator<<() [31/42]

template<int NReal>
std::ostream& amrex::operator<< ( std::ostream &  os,
const Particle< NReal, 0 > &  p 
)

◆ operator<<() [32/42]

template<int NReal, int NInt>
std::ostream& amrex::operator<< ( std::ostream &  os,
const Particle< NReal, NInt > &  p 
)

◆ operator<<() [33/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const amrex::RealDescriptor id 
)

Write out an RealDescriptor to an ostream in ASCII.

◆ operator<<() [34/42]

template<typename T , typename S >
std::ostream& amrex::operator<< ( std::ostream &  os,
const std::pair< T, S > &  v 
)

◆ operator<<() [35/42]

template<typename T , typename std::enable_if< std::is_same< T, Dim3 >::value||std::is_same< T, XDim3 >::value >::type * = nullptr>
std::ostream& amrex::operator<< ( std::ostream &  os,
const T &  d 
)

◆ operator<<() [36/42]

static std::ostream& amrex::operator<< ( std::ostream &  os,
const Vector< Vector< Real > > &  ar 
)
static

◆ operator<<() [37/42]

static std::ostream& amrex::operator<< ( std::ostream &  os,
const Vector< Vector< Real > > &  ar 
)
static

◆ operator<<() [38/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const Vector< VisMF::FabOnDisk > &  fa 
)

Write an Vector<FabOnDisk> to an ostream in ASCII.

◆ operator<<() [39/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const VisMF::FabOnDisk fod 
)

Write a FabOnDisk to an ostream in ASCII.

◆ operator<<() [40/42]

std::ostream & amrex::operator<< ( std::ostream &  os,
const VisMF::Header hd 
)

Write a VisMF::Header to an ostream in ASCII.

◆ operator<<() [41/42]

std::ostream& amrex::operator<< ( std::ostream &  ostr,
const RealVect p 
)

Print to the given output stream in ASCII.

◆ operator<<() [42/42]

template<typename U >
std::ostream& amrex::operator<< ( std::ostream &  out,
const GpuComplex< U > &  c 
)

◆ operator>>() [1/17]

std::istream & amrex::operator>> ( std::istream &  is,
const expect exp 
)

◆ operator>>() [2/17]

std::istream & amrex::operator>> ( std::istream &  is,
Geometry g 
)

Nice ASCII input.

◆ operator>>() [3/17]

std::istream & amrex::operator>> ( std::istream &  is,
RealBox b 
)

Nice ASCII input.

◆ operator>>() [4/17]

std::istream& amrex::operator>> ( std::istream &  is,
CoordSys c 
)

◆ operator>>() [5/17]

std::istream& amrex::operator>> ( std::istream &  is,
FArrayBox f 
)

◆ operator>>() [6/17]

std::istream & amrex::operator>> ( std::istream &  is,
IndexType it 
)

Read an IndexType from an istream.

◆ operator>>() [7/17]

std::istream & amrex::operator>> ( std::istream &  is,
IntDescriptor id 
)

Read in an IntDescriptor from an istream.

◆ operator>>() [8/17]

std::istream& amrex::operator>> ( std::istream &  is,
IntVect iv 
)

◆ operator>>() [9/17]

std::istream& amrex::operator>> ( std::istream &  is,
Mask m 
)

◆ operator>>() [10/17]

std::istream& amrex::operator>> ( std::istream &  is,
Orientation o 
)

◆ operator>>() [11/17]

std::istream & amrex::operator>> ( std::istream &  is,
amrex::RealDescriptor id 
)

Read in a RealDescriptor from an istream.

◆ operator>>() [12/17]

std::istream& amrex::operator>> ( std::istream &  is,
RealVect iv 
)

◆ operator>>() [13/17]

static std::istream& amrex::operator>> ( std::istream &  is,
Vector< Vector< Real > > &  ar 
)
static

◆ operator>>() [14/17]

std::istream & amrex::operator>> ( std::istream &  is,
Vector< VisMF::FabOnDisk > &  fa 
)

Read an Vector<FabOnDisk> from an istream.

◆ operator>>() [15/17]

std::istream & amrex::operator>> ( std::istream &  is,
VisMF::FabOnDisk fod 
)

Read a FabOnDisk from an istream.

◆ operator>>() [16/17]

std::istream & amrex::operator>> ( std::istream &  is,
VisMF::Header hd 
)

Read a VisMF::Header from an istream.

◆ operator>>() [17/17]

std::istream & amrex::operator>> ( std::istream &  is,
Box b 
)

Read from istream.

◆ OutOfMemory()

void amrex::OutOfMemory ( )

Aborts after printing message indicating out-of-memory; i.e. operator new has failed. This is the "supported" set_new_handler() function for AMReX applications.

◆ OutStream()

std::ostream & amrex::OutStream ( )

◆ OverrideSync()

template<class FAB , class IFAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value && IsBaseFab<IFAB>::value>>
void amrex::OverrideSync ( FabArray< FAB > &  fa,
FabArray< IFAB > const &  msk,
const Periodicity period 
)

◆ overset_rescale_bcoef_x()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::overset_rescale_bcoef_x ( Box const &  box,
Array4< Real > const &  bX,
Array4< int const > const &  osm,
int  ncomp,
Real  osfac 
)
noexcept

◆ overset_rescale_bcoef_y()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::overset_rescale_bcoef_y ( Box const &  box,
Array4< Real > const &  bY,
Array4< int const > const &  osm,
int  ncomp,
Real  osfac 
)
noexcept

◆ overset_rescale_bcoef_z()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::overset_rescale_bcoef_z ( Box const &  box,
Array4< Real > const &  bZ,
Array4< int const > const &  osm,
int  ncomp,
Real  osfac 
)
noexcept

◆ OwnerMask()

std::unique_ptr< iMultiFab > amrex::OwnerMask ( FabArrayBase const &  mf,
const Periodicity period,
const IntVect ngrow 
)

◆ packBuffer()

template<class PC , class Buffer , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void amrex::packBuffer ( const PC &  pc,
const ParticleCopyOp op,
const ParticleCopyPlan plan,
Buffer &  snd_buffer 
)

◆ ParallelFor() [1/24]

template<typename L >
void amrex::ParallelFor ( Box const &  box,
L &&  f 
)
noexcept

◆ ParallelFor() [2/24]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::ParallelFor ( Box const &  box,
ncomp,
L &&  f 
)
noexcept

◆ ParallelFor() [3/24]

template<typename L1 , typename L2 , typename L3 >
void amrex::ParallelFor ( Box const &  box1,
Box const &  box2,
Box const &  box3,
L1 &&  f1,
L2 &&  f2,
L3 &&  f3 
)
noexcept

◆ ParallelFor() [4/24]

template<typename L1 , typename L2 >
void amrex::ParallelFor ( Box const &  box1,
Box const &  box2,
L1 &&  f1,
L2 &&  f2 
)
noexcept

◆ ParallelFor() [5/24]

template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void amrex::ParallelFor ( Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2 
)
noexcept

◆ ParallelFor() [6/24]

template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void amrex::ParallelFor ( Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2,
Box const &  box3,
T3  ncomp3,
L3 &&  f3 
)
noexcept

◆ ParallelFor() [7/24]

template<typename L >
void amrex::ParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box,
L &&  f 
)
noexcept

◆ ParallelFor() [8/24]

template<typename L >
std::enable_if_t<MaybeDeviceRunnable<L>::value> amrex::ParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box,
L &&  f 
)
noexcept

◆ ParallelFor() [9/24]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::ParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box,
ncomp,
L &&  f 
)
noexcept

◆ ParallelFor() [10/24]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t<MaybeDeviceRunnable<L>::value> amrex::ParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box,
ncomp,
L &&  f 
)
noexcept

◆ ParallelFor() [11/24]

template<typename L1 , typename L2 , typename L3 >
void amrex::ParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box1,
Box const &  box2,
Box const &  box3,
L1 &&  f1,
L2 &&  f2,
L3 &&  f3 
)
noexcept

◆ ParallelFor() [12/24]

template<typename L1 , typename L2 , typename L3 >
std::enable_if_t<MaybeDeviceRunnable<L1>::value && MaybeDeviceRunnable<L2>::value && MaybeDeviceRunnable<L3>::value> amrex::ParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box1,
Box const &  box2,
Box const &  box3,
L1 &&  f1,
L2 &&  f2,
L3 &&  f3 
)
noexcept

◆ ParallelFor() [13/24]

template<typename L1 , typename L2 >
void amrex::ParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box1,
Box const &  box2,
L1 &&  f1,
L2 &&  f2 
)
noexcept

◆ ParallelFor() [14/24]

template<typename L1 , typename L2 >
std::enable_if_t<MaybeDeviceRunnable<L1>::value && MaybeDeviceRunnable<L2>::value> amrex::ParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box1,
Box const &  box2,
L1 &&  f1,
L2 &&  f2 
)
noexcept

◆ ParallelFor() [15/24]

template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
void amrex::ParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2 
)
noexcept

◆ ParallelFor() [16/24]

template<typename T1 , typename T2 , typename L1 , typename L2 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>>
std::enable_if_t<MaybeDeviceRunnable<L1>::value && MaybeDeviceRunnable<L2>::value> amrex::ParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2 
)
noexcept

◆ ParallelFor() [17/24]

template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
void amrex::ParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2,
Box const &  box3,
T3  ncomp3,
L3 &&  f3 
)
noexcept

◆ ParallelFor() [18/24]

template<typename T1 , typename T2 , typename T3 , typename L1 , typename L2 , typename L3 , typename M1 = std::enable_if_t<std::is_integral<T1>::value>, typename M2 = std::enable_if_t<std::is_integral<T2>::value>, typename M3 = std::enable_if_t<std::is_integral<T3>::value>>
std::enable_if_t<MaybeDeviceRunnable<L1>::value && MaybeDeviceRunnable<L2>::value && MaybeDeviceRunnable<L3>::value> amrex::ParallelFor ( Gpu::KernelInfo const &  ,
Box const &  box1,
T1  ncomp1,
L1 &&  f1,
Box const &  box2,
T2  ncomp2,
L2 &&  f2,
Box const &  box3,
T3  ncomp3,
L3 &&  f3 
)
noexcept

◆ ParallelFor() [19/24]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::ParallelFor ( Gpu::KernelInfo const &  ,
n,
L &&  f 
)
noexcept

◆ ParallelFor() [20/24]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t<MaybeDeviceRunnable<L>::value> amrex::ParallelFor ( Gpu::KernelInfo const &  ,
n,
L &&  f 
)
noexcept

◆ ParallelFor() [21/24]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::ParallelFor ( n,
L &&  f 
)
noexcept

◆ ParallelFor() [22/24]

template<class TagType , class F >
std::enable_if_t<std::is_same<std::decay_t<decltype(std::declval<TagType>).box())>, Box>::value> amrex::ParallelFor ( Vector< TagType > const &  tags,
F &&  f 
)

◆ ParallelFor() [23/24]

template<class TagType , class F >
std::enable_if_t<std::is_integral<std::decay_t<decltype(std::declval<TagType>).size())> >::value> amrex::ParallelFor ( Vector< TagType > const &  tags,
F &&  f 
)

◆ ParallelFor() [24/24]

template<class TagType , class F >
std::enable_if_t<std::is_same<std::decay_t<decltype(std::declval<TagType>).box())>, Box>::value> amrex::ParallelFor ( Vector< TagType > const &  tags,
int  ncomp,
F &&  f 
)

◆ ParallelForRNG() [1/6]

template<typename L >
void amrex::ParallelForRNG ( Box const &  box,
L &&  f 
)
noexcept

◆ ParallelForRNG() [2/6]

template<typename L >
std::enable_if_t<MaybeDeviceRunnable<L>::value> amrex::ParallelForRNG ( Box const &  box,
L &&  f 
)
noexcept

◆ ParallelForRNG() [3/6]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::ParallelForRNG ( Box const &  box,
ncomp,
L &&  f 
)
noexcept

◆ ParallelForRNG() [4/6]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t<MaybeDeviceRunnable<L>::value> amrex::ParallelForRNG ( Box const &  box,
ncomp,
L &&  f 
)
noexcept

◆ ParallelForRNG() [5/6]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
void amrex::ParallelForRNG ( n,
L &&  f 
)
noexcept

◆ ParallelForRNG() [6/6]

template<typename T , typename L , typename M = std::enable_if_t<std::is_integral<T>::value>>
std::enable_if_t<MaybeDeviceRunnable<L>::value> amrex::ParallelForRNG ( n,
L &&  f 
)
noexcept

◆ ParReduce() [1/6]

template<typename Op , typename T , typename FAB , typename F , typename foo = std::enable_if_t<IsBaseFab<FAB>::value>>
T amrex::ParReduce ( TypeList< Op >  operation_list,
TypeList< T >  type_list,
FabArray< FAB > const &  fa,
F &&  f 
)

Parallel reduce for MultiFab/FabArray.

This performs reduction over a MultiFab's valid region. For example, the code below computes the sum of the processed data in a MultiFab.

    auto const& ma = mf.const_arrays();
    Real ektot = ParReduce(TypeList<ReduceOpSum>{}, TypeList<Real>{}, mf,
    [=] AMREX_GPU_DEVICE (int box_no, int i, int j, int k) noexcept
        -> GpuTuple<Real>
    {
        auto rho = ma[box_no](i,j,k,0);
        auto mx = ma[box_no](i,j,k,1);
        auto my = ma[box_no](i,j,k,2);
        auto mz = ma[box_no](i,j,k,3);
        auto ek = (mx*mx+my*my+mz*mz)/(2.*rho);
        return { ek };
    });
Template Parameters
OpReduce operator (e.g., ReduceOpSum, ReduceOpMin, ReduceOpMax, ReduceOpLogicalAnd, and ReduceOpLogicalOr)
Tdata type (e.g., Real, int, etc.)
FABMultiFab/FabArray type
Fcallable type like a lambda funcion
Parameters
operation_lista reduce operator stored in TypeList
type_lista data type stored in TypeList
faa MultiFab/FabArray object used to specify the iteration space
fa callable object returning GpuTuple<T>. It takes four ints, where the first int is the local box index and the others are spatial indices for x, y, and z-directions.
Returns
reduction result (T)

◆ ParReduce() [2/6]

template<typename Op , typename T , typename FAB , typename F , typename foo = std::enable_if_t<IsBaseFab<FAB>::value>>
T amrex::ParReduce ( TypeList< Op >  operation_list,
TypeList< T >  type_list,
FabArray< FAB > const &  fa,
IntVect const &  nghost,
F &&  f 
)

Parallel reduce for MultiFab/FabArray.

This performs reduction over a MultiFab's valid and specified ghost regions. For example, the code below computes the sum of the processed data in a MultiFab.

    auto const& ma = mf.const_arrays();
    Real ektot = ParReduce(TypeList<ReduceOpSum>{}, TypeList<Real>{},
                           mf, IntVect(0),
    [=] AMREX_GPU_DEVICE (int box_no, int i, int j, int k) noexcept
        -> GpuTuple<Real>
    {
        auto rho = ma[box_no](i,j,k,0);
        auto mx = ma[box_no](i,j,k,1);
        auto my = ma[box_no](i,j,k,2);
        auto mz = ma[box_no](i,j,k,3);
        auto ek = (mx*mx+my*my+mz*mz)/(2.*rho);
        return { ek };
    });
Template Parameters
OpReduce operator (e.g., ReduceOpSum, ReduceOpMin, ReduceOpMax, ReduceOpLogicalAnd, and ReduceOpLogicalOr)
Tdata type (e.g., Real, int, etc.)
FABMultiFab/FabArray type
Fcallable type like a lambda funcion
Parameters
operation_lista reduce operator stored in TypeList
type_lista data type stored in TypeList
faa MultiFab/FabArray object used to specify the iteration space
nghostthe number of ghost cells included in the iteration space
fa callable object returning GpuTuple<T>. It takes four ints, where the first int is the local box index and the others are spatial indices for x, y, and z-directions.
Returns
reduction result (T)

◆ ParReduce() [3/6]

template<typename Op , typename T , typename FAB , typename F , typename foo = std::enable_if_t<IsBaseFab<FAB>::value>>
T amrex::ParReduce ( TypeList< Op >  operation_list,
TypeList< T >  type_list,
FabArray< FAB > const &  fa,
IntVect const &  nghost,
int  ncomp,
F &&  f 
)

Parallel reduce for MultiFab/FabArray.

This performs reduction over a MultiFab's valid and specified ghost regions. For example, the code below computes the sum of the data in a MultiFab.

    auto const& ma = mf.const_arrays();
    Real ektot = ParReduce(TypeList<ReduceOpSum>{}, TypeList<Real>{},
                           mf, mf.nGrowVect(), mf.nComp(),
    [=] AMREX_GPU_DEVICE (int box_no, int i, int j, int k, int n) noexcept
        -> GpuTuple<Real>
    {
        return { ma[box_no](i,j,k,n) };
    });
Template Parameters
OpReduce operator (e.g., ReduceOpSum, ReduceOpMin, ReduceOpMax, ReduceOpLogicalAnd, and ReduceOpLogicalOr)
Tdata type (e.g., Real, int, etc.)
FABMultiFab/FabArray type
Fcallable type like a lambda funcion
Parameters
operation_lista reduce operator stored in TypeList
type_lista data type stored in TypeList
faa MultiFab/FabArray object used to specify the iteration space
nghostthe number of ghost cells included in the iteration space
ncompthe number of components in the iteration space
fa callable object returning GpuTuple<T>. It takes four ints, where the first int is the local box index and the others are spatial indices for x, y, and z-directions.
Returns
reduction result (T)

◆ ParReduce() [4/6]

template<typename... Ops, typename... Ts, typename FAB , typename F , typename foo = std::enable_if_t<IsBaseFab<FAB>::value>>
ReduceData<Ts...>::Type amrex::ParReduce ( TypeList< Ops... >  operation_list,
TypeList< Ts... >  type_list,
FabArray< FAB > const &  fa,
F &&  f 
)

Parallel reduce for MultiFab/FabArray.

This performs reduction over a MultiFab's valid region. For example, the code below computes the minimum of the first MultiFab and the maximum of the second MultiFab.

    auto const& ma1 = mf1.const_arrays();
    auot const& ma2 = mf2.const_arrays();
    GpuTuple<Real,Real> mm = ParReduce(TypeList<ReduceOpMin,ReduceOpMax>{},
                                       TypeList<Real,Real>{}, mf1,
    [=] AMREX_GPU_DEVICE (int box_no, int i, int j, int k) noexcept
        -> GpuTuple<Real,Real>
    {
        return { ma1[box_no](i,j,k), ma2[box_no](i,j,k) };
    });
Template Parameters
Ops...reduce operators (e.g., ReduceOpSum, ReduceOpMin, ReduceOpMax, ReduceOpLogicalAnd, and ReduceOpLogicalOr)
Ts...data types (e.g., Real, int, etc.)
FABMultiFab/FabArray type
Fcallable type like a lambda funcion
Parameters
operation_listlist of reduce operators
type_listlist of data types
faa MultiFab/FabArray object used to specify the iteration space
fa callable object returning GpuTuple<Ts...>. It takes four ints, where the first int is the local box index and the others are spatial indices for x, y, and z-directions.
Returns
reduction result (GpuTuple<Ts...>)

◆ ParReduce() [5/6]

template<typename... Ops, typename... Ts, typename FAB , typename F , typename foo = std::enable_if_t<IsBaseFab<FAB>::value>>
ReduceData<Ts...>::Type amrex::ParReduce ( TypeList< Ops... >  operation_list,
TypeList< Ts... >  type_list,
FabArray< FAB > const &  fa,
IntVect const &  nghost,
F &&  f 
)

Parallel reduce for MultiFab/FabArray.

This performs reduction over a MultiFab's valid and specified ghost regions. For example, the code below computes the minimum of the first MultiFab and the maximum of the second MultiFab.

    auto const& ma1 = mf1.const_arrays();
    auot const& ma2 = mf2.const_arrays();
    GpuTuple<Real,Real> mm = ParReduce(TypeList<ReduceOpMin,ReduceOpMax>{},
                                       TypeList<Real,Real>{},
                                       mf1, mf1.nGrowVect(),
    [=] AMREX_GPU_DEVICE (int box_no, int i, int j, int k) noexcept
        -> GpuTuple<Real,Real>
    {
        return { ma1[box_no](i,j,k), ma2[box_no](i,j,k) };
    });
Template Parameters
Ops...reduce operators (e.g., ReduceOpSum, ReduceOpMin, ReduceOpMax, ReduceOpLogicalAnd, and ReduceOpLogicalOr)
Ts...data types (e.g., Real, int, etc.)
FABMultiFab/FabArray type
Fcallable type like a lambda funcion
Parameters
operation_listlist of reduce operators
type_listlist of data types
faa MultiFab/FabArray object used to specify the iteration space
nghostthe number of ghost cells included in the iteration space
fa callable object returning GpuTuple<Ts...>. It takes four ints, where the first int is the local box index and the others are spatial indices for x, y, and z-directions.
Returns
reduction result (GpuTuple<Ts...>)

◆ ParReduce() [6/6]

template<typename... Ops, typename... Ts, typename FAB , typename F , typename foo = std::enable_if_t<IsBaseFab<FAB>::value>>
ReduceData<Ts...>::Type amrex::ParReduce ( TypeList< Ops... >  operation_list,
TypeList< Ts... >  type_list,
FabArray< FAB > const &  fa,
IntVect const &  nghost,
int  ncomp,
F &&  f 
)

Parallel reduce for MultiFab/FabArray.

This performs reduction over a MultiFab's valid and specified ghost regions and components. For example, the code below computes the minimum of the first MultiFab and the maximum of the second MultiFab.

    auto const& ma1 = mf1.const_arrays();
    auot const& ma2 = mf2.const_arrays();
    GpuTuple<Real,Real> mm = ParReduce(TypeList<ReduceOpMin,ReduceOpMax>{},
                                       TypeList<Real,Real>{},
                                       mf1, mf1.nGrowVect(), mf1.nComp(),
    [=] AMREX_GPU_DEVICE (int box_no, int i, int j, int k, int n) noexcept
        -> GpuTuple<Real,Real>
    {
        return { ma1[box_no](i,j,k,n), ma2[box_no](i,j,k,n) };
    });
Template Parameters
Ops...reduce operators (e.g., ReduceOpSum, ReduceOpMin, ReduceOpMax, ReduceOpLogicalAnd, and ReduceOpLogicalOr)
Ts...data types (e.g., Real, int, etc.)
FABMultiFab/FabArray type
Fcallable type like a lambda funcion
Parameters
operation_listlist of reduce operators
type_listlist of data types
faa MultiFab/FabArray object used to specify the iteration space
nghostthe number of ghost cells included in the iteration space
ncompthe number of components in the iteration space
fa callable object returning GpuTuple<Ts...>. It takes five ints, where the first int is the local box index, the next three are spatial indices for x, y, and z-directions, and the last is for component.
Returns
reduction result (GpuTuple<Ts...>)

◆ parser_aligned_size()

static std::size_t amrex::parser_aligned_size ( std::size_t  N)
static

◆ parser_allocate()

static void* amrex::parser_allocate ( struct amrex_parser my_parser,
std::size_t  N 
)
static

◆ parser_ast_depth()

int amrex::parser_ast_depth ( struct parser_node node)

◆ parser_ast_dup()

struct parser_node * amrex::parser_ast_dup ( struct amrex_parser my_parser,
struct parser_node node,
int  move 
)

◆ parser_ast_get_symbols()

void amrex::parser_ast_get_symbols ( struct parser_node node,
std::set< std::string > &  symbols,
std::set< std::string > &  local_symbols 
)

◆ parser_ast_optimize()

void amrex::parser_ast_optimize ( struct parser_node node)

◆ parser_ast_print()

void amrex::parser_ast_print ( struct parser_node node,
std::string const &  space,
AllPrint printer 
)

◆ parser_ast_print_f1()

static void amrex::parser_ast_print_f1 ( struct parser_f1 f1,
std::string const &  space,
AllPrint printer 
)
static

◆ parser_ast_print_f2()

static void amrex::parser_ast_print_f2 ( struct parser_f2 f2,
std::string const &  space,
AllPrint printer 
)
static

◆ parser_ast_print_f3()

static void amrex::parser_ast_print_f3 ( struct parser_f3 f3,
std::string const &  space,
AllPrint printer 
)
static

◆ parser_ast_regvar()

void amrex::parser_ast_regvar ( struct parser_node node,
char const *  name,
int  i 
)

◆ parser_ast_setconst()

void amrex::parser_ast_setconst ( struct parser_node node,
char const *  name,
double  c 
)

◆ parser_ast_size()

std::size_t amrex::parser_ast_size ( struct parser_node node)

◆ parser_call_f1()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE double amrex::parser_call_f1 ( enum parser_f1_t  type,
double  a 
)

◆ parser_call_f2()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE double amrex::parser_call_f2 ( enum parser_f2_t  type,
double  a,
double  b 
)

◆ parser_call_f3()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE double amrex::parser_call_f3 ( enum  parser_f3_t,
double  a,
double  b,
double  c 
)

◆ parser_compile()

void amrex::parser_compile ( struct amrex_parser parser,
char *  p 
)
inline

◆ parser_compile_exe_size()

void amrex::parser_compile_exe_size ( struct parser_node node,
char *&  p,
std::size_t &  exe_size,
int max_stack_size,
int stack_size,
Vector< char * > &  local_variables 
)

◆ parser_defexpr()

void amrex::parser_defexpr ( struct parser_node body)

◆ parser_depth()

int amrex::parser_depth ( struct amrex_parser parser)

◆ parser_dup()

struct amrex_parser * amrex::parser_dup ( struct amrex_parser source)

◆ parser_exe_eval()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE double amrex::parser_exe_eval ( char *  p,
double const *  x 
)

◆ parser_exe_size()

std::size_t amrex::parser_exe_size ( struct amrex_parser parser,
int max_stack_size,
int stack_size 
)
inline

◆ parser_get_symbols()

std::set< std::string > amrex::parser_get_symbols ( struct amrex_parser parser)

◆ parser_local_symbol_index()

static int amrex::parser_local_symbol_index ( struct parser_symbol sym,
Vector< char * > &  local_variables 
)
static

◆ parser_makesymbol()

struct parser_symbol * amrex::parser_makesymbol ( char *  name)

◆ parser_math_acos()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_acos ( a)

◆ parser_math_asin()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_asin ( a)

◆ parser_math_atan()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_atan ( a)

◆ parser_math_cos()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_cos ( a)

◆ parser_math_cosh()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_cosh ( a)

◆ parser_math_exp()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_exp ( a)

◆ parser_math_jn()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_jn ( int  a,
b 
)

◆ parser_math_log()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_log ( a)

◆ parser_math_log10()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_log10 ( a)

◆ parser_math_pow()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_pow ( a,
b 
)

◆ parser_math_sin()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_sin ( a)

◆ parser_math_sinh()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_sinh ( a)

◆ parser_math_tan()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_tan ( a)

◆ parser_math_tanh()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_NO_INLINE T amrex::parser_math_tanh ( a)

◆ parser_newassign()

struct parser_node * amrex::parser_newassign ( struct parser_symbol sym,
struct parser_node v 
)

◆ parser_newf1()

struct parser_node * amrex::parser_newf1 ( enum parser_f1_t  ftype,
struct parser_node l 
)

◆ parser_newf2()

struct parser_node * amrex::parser_newf2 ( enum parser_f2_t  ftype,
struct parser_node l,
struct parser_node r 
)

◆ parser_newf3()

struct parser_node * amrex::parser_newf3 ( enum parser_f3_t  ftype,
struct parser_node n1,
struct parser_node n2,
struct parser_node n3 
)

◆ parser_newlist()

struct parser_node * amrex::parser_newlist ( struct parser_node nl,
struct parser_node nr 
)

◆ parser_newnode()

struct parser_node * amrex::parser_newnode ( enum parser_node_t  type,
struct parser_node l,
struct parser_node r 
)

◆ parser_newnumber()

struct parser_node * amrex::parser_newnumber ( double  d)

◆ parser_newsymbol()

struct parser_node * amrex::parser_newsymbol ( struct parser_symbol symbol)

◆ parser_print()

void amrex::parser_print ( struct amrex_parser parser)

◆ parser_regvar()

void amrex::parser_regvar ( struct amrex_parser parser,
char const *  name,
int  i 
)

◆ parser_setconst()

void amrex::parser_setconst ( struct amrex_parser parser,
char const *  name,
double  c 
)

◆ ParticleContainerToBlueprint()

template<int NStructReal, int NStructInt, int NArrayReal, int NArrayInt>
void amrex::ParticleContainerToBlueprint ( const ParticleContainer< NStructReal, NStructInt, NArrayReal, NArrayInt > &  pc,
const Vector< std::string > &  real_comp_names,
const Vector< std::string > &  int_comp_names,
conduit::Node &  res,
const std::string &  topology_name 
)

◆ ParticleReduce() [1/3]

template<class RD , class PC , class F , class ReduceOps , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
RD::Type amrex::ParticleReduce ( PC const &  pc,
F &&  f,
ReduceOps reduce_ops 
)

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates over all particles on all levels.

This version can operate on a GpuTuple worth of data at once. It also takes an arbitrary tuple of reduction operators.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Unlike the other reduction functions in this file, this version does not respect the Gpu::launchRegion flag. If AMReX is built with GPU support, this reduction will always be done on the device.

Template Parameters
RDan amrex::ReduceData type
PCthe ParticleContainer type
Fa function object
ReduceOpsa ReduceOps type
Parameters
pcthe ParticleContainer to operate on
fa function that takes a "superparticle" and returns a tuple of values to be reduced over all particles.
reduce_opsspecifies the reduction operations for each tuple element

Example usage: amrex::ReduceOps<ReduceOpSum, ReduceOpMin, ReduceOpMax> reduce_ops; auto r = amrex::ParticleReduce<ReduceData<amrex::Real, amrex::Real,int>> ( pc, [=] AMREX_GPU_DEVICE (const PType& p) noexcept -> amrex::GpuTuple<amrex::Real,amrex::Real,int> { const amrex::Real a = p.rdata(1); const amrex::Real b = p.rdata(2); const int c = p.idata(1); return {a, b, c}; }, reduce_ops);

◆ ParticleReduce() [2/3]

template<class RD , class PC , class F , class ReduceOps , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
RD::Type amrex::ParticleReduce ( PC const &  pc,
int  lev,
F &&  f,
ReduceOps reduce_ops 
)

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates only on the specified level.

This version can operate on a GpuTuple worth of data at once. It also takes an arbitrary tuple of reduction operators.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Unlike the other reduction functions in this file, this version does not respect the Gpu::launchRegion flag. If AMReX is built with GPU support, this reduction will always be done on the device.

Template Parameters
RDan amrex::ReduceData type
PCthe ParticleContainer type
Fa function object
ReduceOpsa ReduceOps type
Parameters
pcthe ParticleContainer to operate on
levthe level to operate on
fa function that takes a "superparticle" and returns a tuple of values to be reduced over all particles.
reduce_opsspecifies the reduction operations for each tuple element

Example usage: amrex::ReduceOps<ReduceOpSum, ReduceOpMin, ReduceOpMax> reduce_ops; auto r = amrex::ParticleReduce<ReduceData<amrex::Real, amrex::Real,int>> ( pc, 0, [=] AMREX_GPU_DEVICE (const PType& p) noexcept -> amrex::GpuTuple<amrex::Real,amrex::Real,int> { const amrex::Real a = p.rdata(1); const amrex::Real b = p.rdata(2); const int c = p.idata(1); return {a, b, c}; }, reduce_ops);

◆ ParticleReduce() [3/3]

template<class RD , class PC , class F , class ReduceOps , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
RD::Type amrex::ParticleReduce ( PC const &  pc,
int  lev_min,
int  lev_max,
F &&  f,
ReduceOps reduce_ops 
)

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates from the specified lev_min to lev_max.

This version can operate on a GpuTuple worth of data at once. It also takes an arbitrary tuple of reduction operators.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Unlike the other reduction functions in this file, this version does not respect the Gpu::launchRegion flag. If AMReX is built with GPU support, this reduction will always be done on the device.

Template Parameters
RDan amrex::ReduceData type
PCthe ParticleContainer type
Fa function object
ReduceOpsa ReduceOps type
Parameters
pcthe ParticleContainer to operate on
lev_minthe minimum level to include
lev_maxthe maximum level to include
fa function that takes a "superparticle" and returns a tuple of values to be reduced over all particles.
reduce_opsspecifies the reduction operations for each tuple element

Example usage: amrex::ReduceOps<ReduceOpSum, ReduceOpMin, ReduceOpMax> reduce_ops; auto r = amrex::ParticleReduce<ReduceData<amrex::Real, amrex::Real,int>> ( pc, 0, 1, [=] AMREX_GPU_DEVICE (const PType& p) noexcept -> amrex::GpuTuple<amrex::Real,amrex::Real,int> { const amrex::Real a = p.rdata(1); const amrex::Real b = p.rdata(2); const int c = p.idata(1); return {a, b, c}; }, reduce_ops);

◆ ParticleTileToBlueprint()

template<int NStructReal, int NStructInt, int NArrayReal, int NArrayInt>
void amrex::ParticleTileToBlueprint ( const ParticleTile< NStructReal, NStructInt, NArrayReal, NArrayInt > &  ptile,
const Vector< std::string > &  real_comp_names,
const Vector< std::string > &  int_comp_names,
conduit::Node &  res,
const std::string &  topology_name 
)

◆ ParticleToMesh() [1/2]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void amrex::ParticleToMesh ( PC const &  pc,
const Vector< MultiFab * > &  mf,
int  lev_min,
int  lev_max,
F &&  f,
bool  zero_out_input = true,
bool  vol_weight = true 
)

◆ ParticleToMesh() [2/2]

template<class PC , class MF , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void amrex::ParticleToMesh ( PC const &  pc,
MF &  mf,
int  lev,
F &&  f,
bool  zero_out_input = true 
)

◆ Partition() [1/3]

template<typename T , typename F >
int amrex::Partition ( Gpu::DeviceVector< T > &  v,
F &&  f 
)

A GPU-capable partition function for contiguous data.

After calling this, all the items for which the predicate is true will be before the items for which the predicate is false in the input array.

This version is not stable, if you want that behavior use amrex::StablePartition instead.

Template Parameters
Ttype of the data to be partitioned.
Ftype of the predicate function.
Parameters
va Gpu::DeviceVector with the data to be partitioned.
fpredicate function that returns 1 or 0 for each input

Returns the index of the first element for which f is 0.

◆ Partition() [2/3]

template<typename T , typename F >
int amrex::Partition ( T *  data,
int  beg,
int  end,
F &&  f 
)

A GPU-capable partition function for contiguous data.

After calling this, all the items for which the predicate is true will be before the items for which the predicate is false in the input array.

This version is not stable, if you want that behavior use amrex::StablePartition instead.

Template Parameters
Ttype of the data to be partitioned.
Ftype of the predicate function.
Parameters
datapointer to the data to be partitioned
begindex at which to start
endindex at which to stop (exclusive)
fpredicate function that returns 1 or 0 for each input

Returns the index of the first element for which f is 0.

◆ Partition() [3/3]

template<typename T , typename F >
int amrex::Partition ( T *  data,
int  n,
F &&  f 
)

A GPU-capable partition function for contiguous data.

After calling this, all the items for which the predicate is true will be before the items for which the predicate is false in the input array.

This version is not stable, if you want that behavior use amrex::StablePartition instead.

Template Parameters
Ttype of the data to be partitioned.
Ftype of the predicate function.
Parameters
datapointer to the data to be partitioned
Nthe number of elements in the array
fpredicate function that returns 1 or 0 for each input

Returns the index of the first element for which f is 0.

◆ partitionParticlesByDest()

template<typename PTile , typename PLocator >
int amrex::partitionParticlesByDest ( PTile &  ptile,
const PLocator &  ploc,
const ParticleBufferMap pmap,
const Geometry geom,
int  lev,
int  gid,
int  ,
int  lev_min,
int  lev_max,
int  nGrow 
)

◆ pcinterp_interp()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::pcinterp_interp ( Box const &  bx,
Array4< Real > const &  fine,
const int  fcomp,
const int  ncomp,
Array4< Real const > const &  crse,
const int  ccomp,
IntVect const &  ratio 
)
noexcept

◆ PD_convert()

static void amrex::PD_convert ( void *  out,
const void *  in,
Long  nitems,
int  boffs,
const RealDescriptor ord,
const RealDescriptor ird,
const IntDescriptor iid,
int  onescmp = 0 
)
static

◆ PD_fconvert()

void amrex::PD_fconvert ( void *  out,
const void *  in,
Long  nitems,
int  boffs,
const Long *  outfor,
const int outord,
const Long *  infor,
const int inord,
int  l_order,
int  l_bytes,
int  onescmp 
)

◆ PD_fixdenormals()

static void amrex::PD_fixdenormals ( void *  out,
Long  nitems,
const Long *  outfor,
const int outord 
)
static

◆ periodicShift()

MultiFab amrex::periodicShift ( MultiFab const &  mf,
IntVect const &  offset,
Periodicity const &  period 
)

Periodic shift MultiFab.

◆ permute_real_word_order()

static void amrex::permute_real_word_order ( void *  out,
const void *  in,
Long  nitems,
const int outord,
const int inord,
int  REALSIZE 
)
static

◆ placementDelete() [1/2]

template<typename T >
std::enable_if<!std::is_trivially_destructible<T>::value>::type amrex::placementDelete ( T *const  ptr,
Long  n 
)

◆ placementDelete() [2/2]

template<typename T >
std::enable_if<std::is_trivially_destructible<T>::value>::type amrex::placementDelete ( T * const  ,
Long   
)

◆ placementNew() [1/3]

template<typename T >
std::enable_if_t<std::is_trivially_default_constructible<T>::value && !std::is_arithmetic<T>::value> amrex::placementNew ( T *const  ptr,
Long  n 
)

◆ placementNew() [2/3]

template<typename T >
std::enable_if_t<!std::is_trivially_default_constructible<T>::value> amrex::placementNew ( T *const  ptr,
Long  n 
)

◆ placementNew() [3/3]

template<typename T >
std::enable_if<std::is_arithmetic<T>::value>::type amrex::placementNew ( T * const  ,
Long   
)

A Fortran Array-like Object BaseFab emulates the Fortran array concept. Useful operations can be performed upon BaseFabs in C++, and they provide a convenient interface to Fortran when it is necessary to retreat into that language.

BaseFab is a template class. Through use of the template, a BaseFab may be based upon any class. So far at least, most applications have been based upon simple types like integers, real*4s, or real*8s. Most applications do not use BaseFabs directly, but utilize specialized classes derived from BaseFab.

Classes derived from BaseFab include FArrayBox, IArrayBox, TagBox, Mask, EBFArrayBox, EBCellFlag and CutFab.

BaseFab objects depend on the dimensionality of space (indirectly through the DOMAIN Box member). It is typical to define the macro SPACEDIM to be 1, 2, or 3 to indicate the dimension of space. See the discussion of class Box for more information. A BaseFab contains a Box DOMAIN, which indicates the integer indexing space over which the array is defined. A BaseFab also has NVAR components. By components, we mean that for each point in the rectangular indexing space, there are NVAR values associated with that point. A Fortran array corresponding to a BaseFab would have (SPACEDIM+1) dimensions.

By design, the array layout in a BaseFab mirrors that of a Fortran array. The first index (x direction for example) varies most rapidly, the next index (y direction), if any, varies next fastest. The component index varies last, after all the spatial indices.

It is sometimes convenient to be able to treat a sub-array within an existing BaseFab as a BaseFab in its own right. This is often referred to as aliasing the BaseFab. Note that when aliasing is used, the BaseFabs domain will not, in general, be the same as the parent BaseFabs domain, nor will the number of components. BaseFab is a dimension dependent class, so SPACEDIM must be defined as either 1, 2, or 3 when compiling.

This is NOT a polymorphic class.

It does NOT provide a copy constructor or assignment operator.

T MUST have a default constructor and an assignment operator.

◆ polar()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::polar ( const T &  a_r,
const T &  a_theta 
)
noexcept

Return a complex number given its polar representation.

◆ poly_interp_coeff()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::poly_interp_coeff ( Real  xInt,
Real const *AMREX_RESTRICT  x,
int  N,
Real *AMREX_RESTRICT  c 
)
noexcept

◆ pout()

std::ostream & amrex::pout ( )

the stream that all output except error msgs should use

Use this in place of std::cout for program output.

In serial this is the standard output, in parallel it is a different file on each proc (see setPoutBaseName()).

Can be used to replace std::cout. In serial this just returns std::cout. In parallel, this creates a separate file for each proc called <basename>.n where n is the procID and <basename> defaults to "pout" but can be set by calling setPoutBaseName(). Output is then directed to these files. This keeps the output from different processors from getting all jumbled up. If you want fewer files, you can use ParmParse parameter amrex.pout_int=nproc and it will only output every nproc processors pout.n files (where nnproc == 0).

◆ poutFileName()

const std::string & amrex::poutFileName ( )

return the current filename as used by pout()

Accesses the filename for the local pout() file.

in serial, just return the string "cout"; abort if MPI is not initialized.

Returns the name used for the local pout() file. In parallel this is "\<pout_basename\>.\<procID\>", where <pout_basename> defaults to "pout" and can be modified by calling setPoutBaseName(), and <procID> is the local proc number. In serial, this always returns the string "cout". It is an error (exit code 111) to call this in parallel before MPI_Initialize().

◆ pow() [1/2]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::pow ( const GpuComplex< T > &  a_z,
const T &  a_y 
)
noexcept

Raise a complex number to a (real) power.

◆ pow() [2/2]

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::pow ( const GpuComplex< T > &  a_z,
int  a_n 
)
noexcept

Raise a complex number to an integer power.

◆ PreBuildDirectorHierarchy()

void amrex::PreBuildDirectorHierarchy ( const std::string &  dirName,
const std::string &  subDirPrefix,
int  nSubDirs,
bool  callBarrier 
)

prebuild a hierarchy of directories dirName is built first. if dirName exists, it is renamed. then build dirName/subDirPrefix_0 .. dirName/subDirPrefix_nSubDirs-1 if callBarrier is true, call ParallelDescriptor::Barrier() after all directories are built ParallelDescriptor::IOProcessor() creates the directories

Parameters
&dirName
&subDirPrefix
nSubDirs
callBarrier

◆ prefetchToDevice()

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::prefetchToDevice ( FabArray< FAB > const &  fa,
const bool  synchronous = true 
)

◆ prefetchToHost()

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::prefetchToHost ( FabArray< FAB > const &  fa,
const bool  synchronous = true 
)

◆ print_state()

void amrex::print_state ( const MultiFab mf,
const IntVect cell,
const int  n,
const IntVect ng 
)

Output state data for a single zone.

◆ printCell()

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::printCell ( FabArray< FAB > const &  mf,
const IntVect cell,
int  comp = -1,
const IntVect ng = IntVect::TheZeroVector() 
)

◆ PrintTimeRangeList()

void amrex::PrintTimeRangeList ( const std::list< RegionsProfStats::TimeRange > &  trList)

◆ ProperlyNested()

template<typename Interp >
bool amrex::ProperlyNested ( const IntVect ratio,
const IntVect blocking_factor,
int  ngrow,
const IndexType boxType,
Interp *  mapper 
)

◆ Random() [1/2]

amrex::Real amrex::Random ( )

Generate a psuedo-random double from uniform distribution.

Generates one pseudorandom real number (double) from a uniform distribution between 0.0 and 1.0 (0.0 included, 1.0 excluded)

◆ Random() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::Random ( RandomEngine const &  random_engine)

◆ Random_int() [1/2]

unsigned int amrex::Random_int ( unsigned int  n)

Generates one pseudorandom unsigned integer which is uniformly distributed on [0,n-1]-interval for each call.

The CPU version of this function uses C++11's mt19937. The GPU version uses CURAND's XORWOW generator.

◆ Random_int() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE unsigned int amrex::Random_int ( unsigned int  n,
RandomEngine const &  random_engine 
)

◆ Random_long()

ULong amrex::Random_long ( ULong  n)

Generates one pseudorandom unsigned long which is uniformly distributed on [0,n-1]-interval for each call.

The CPU version of this function uses C++11's mt19937. There is no GPU version.

◆ RandomNormal() [1/2]

Real amrex::RandomNormal ( Real  mean,
Real  stddev 
)

Generate a psuedo-random double from a normal distribution.

Generates one pseudorandom real number (double) from a normal distribution with mean 'mean' and standard deviation 'stddev'.

◆ RandomNormal() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Real amrex::RandomNormal ( Real  mean,
Real  stddev,
RandomEngine const &  random_engine 
)

◆ RandomPoisson() [1/2]

unsigned int amrex::RandomPoisson ( Real  lambda)

Generate a psuedo-random integer from a Poisson distribution.

Generates one pseudorandom positive integer number (double) extracted from a Poisson distribution, given the Real parameter lambda. The CPU version of this function relies on the standard Template Library The GPU version of this function relies on the cuRAND library

◆ RandomPoisson() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE unsigned int amrex::RandomPoisson ( Real  lambda,
RandomEngine const &  random_engine 
)

◆ readBoxArray()

void amrex::readBoxArray ( BoxArray ba,
std::istream &  is,
bool  bReadSpecial 
)

Read a BoxArray from a stream. If b is true, read in a special way.

◆ readData() [1/4]

void amrex::readData ( double *  data,
std::size_t  size,
std::istream &  is 
)
inline

◆ readData() [2/4]

void amrex::readData ( float *  data,
std::size_t  size,
std::istream &  is 
)
inline

◆ readData() [3/4]

void amrex::readData ( int data,
std::size_t  size,
std::istream &  is 
)
inline

◆ readData() [4/4]

void amrex::readData ( Long *  data,
std::size_t  size,
std::istream &  is 
)
inline

◆ readDoubleData()

void amrex::readDoubleData ( double *  data,
std::size_t  size,
std::istream &  is,
const RealDescriptor rd 
)

Read double data from the istream. The arguments are a pointer to data buffer to read into, the size of that buffer, the istream, and a RealDescriptor that describes the format of the data on disk. The buffer is assumed to be large enough to store 'size' Reals, and it is the user's reponsiblity to allocate this data.

◆ readFloatData()

void amrex::readFloatData ( float *  data,
std::size_t  size,
std::istream &  is,
const RealDescriptor rd 
)

Read float data from the istream. The arguments are a pointer to data buffer to read into, the size of that buffer, the istream, and a RealDescriptor that describes the format of the data on disk. The buffer is assumed to be large enough to store 'size' Reals, and it is the user's reponsiblity to allocate this data.

◆ readIntData() [1/2]

void amrex::readIntData ( int data,
std::size_t  size,
std::istream &  is,
const IntDescriptor id 
)

Read int data from the istream. The arguments are a pointer to data buffer to read into, the size of that buffer, the istream, and an IntDescriptor that describes the format of the data on disk. The buffer is assumed to be large enough to store 'size' integers, and it is the user's reponsiblity to allocate this data.

◆ readIntData() [2/2]

template<typename To , typename From >
void amrex::readIntData ( To *  data,
std::size_t  size,
std::istream &  is,
const amrex::IntDescriptor id 
)

◆ readLongData()

void amrex::readLongData ( Long *  data,
std::size_t  size,
std::istream &  is,
const IntDescriptor id 
)

Read int data from the istream. The arguments are a pointer to data buffer to read into, the size of that buffer, the istream, and an IntDescriptor that describes the format of the data on disk. The buffer is assumed to be large enough to store 'size' longs, and it is the user's reponsiblity to allocate this data.

◆ readRealData()

void amrex::readRealData ( Real *  data,
std::size_t  size,
std::istream &  is,
const RealDescriptor rd 
)

Read Real data from the istream. The arguments are a pointer to data buffer to read into, the size of that buffer, the istream, and a RealDescriptor that describes the format of the data on disk. The buffer is assumed to be large enough to store 'size' Reals, and it is the user's reponsiblity to allocate this data.

◆ RedistFiles()

void amrex::RedistFiles ( )

◆ ReduceLogicalAnd() [1/7]

template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
bool amrex::ReduceLogicalAnd ( FabArray< FAB > const &  fa,
int  nghost,
F &&  f 
)

◆ ReduceLogicalAnd() [2/7]

template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
bool amrex::ReduceLogicalAnd ( FabArray< FAB > const &  fa,
IntVect const &  nghost,
F &&  f 
)

◆ ReduceLogicalAnd() [3/7]

template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
bool amrex::ReduceLogicalAnd ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
int  nghost,
F &&  f 
)

◆ ReduceLogicalAnd() [4/7]

template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
bool amrex::ReduceLogicalAnd ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
IntVect const &  nghost,
F &&  f 
)

◆ ReduceLogicalAnd() [5/7]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
bool amrex::ReduceLogicalAnd ( PC const &  pc,
F &&  f 
)

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates over all particles on all levels.

This version uses "LogicalAnd" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceLogicalAnd() [6/7]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
bool amrex::ReduceLogicalAnd ( PC const &  pc,
int  lev,
F &&  f 
)

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates only on the specified level.

This version uses "LogicalAnd" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
levthe level to operate on
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceLogicalAnd() [7/7]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
bool amrex::ReduceLogicalAnd ( PC const &  pc,
int  lev_min,
int  lev_max,
F &&  f 
)

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates from the specified lev_min to lev_max.

This version uses "LogicalAnd" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
lev_minthe minimum level to include
lev_maxthe maximum level to include
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceLogicalOr() [1/7]

template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
bool amrex::ReduceLogicalOr ( FabArray< FAB > const &  fa,
int  nghost,
F &&  f 
)

◆ ReduceLogicalOr() [2/7]

template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
bool amrex::ReduceLogicalOr ( FabArray< FAB > const &  fa,
IntVect const &  nghost,
F &&  f 
)

◆ ReduceLogicalOr() [3/7]

template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
bool amrex::ReduceLogicalOr ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
int  nghost,
F &&  f 
)

◆ ReduceLogicalOr() [4/7]

template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
bool amrex::ReduceLogicalOr ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
IntVect const &  nghost,
F &&  f 
)

◆ ReduceLogicalOr() [5/7]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
bool amrex::ReduceLogicalOr ( PC const &  pc,
F &&  f 
)

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates over all particles on all levels.

This version uses "LogicalOr" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceLogicalOr() [6/7]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
bool amrex::ReduceLogicalOr ( PC const &  pc,
int  lev,
F &&  f 
)

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates only on the specified level.

This version uses "LogicalOr" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
levthe level to operate on
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceLogicalOr() [7/7]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
bool amrex::ReduceLogicalOr ( PC const &  pc,
int  lev_min,
int  lev_max,
F &&  f 
)

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates from the specified lev_min to lev_max.

This version uses "LogicalOr" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
lev_minthe minimum level to include
lev_maxthe maximum level to include
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceMax() [1/9]

template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
FAB::value_type amrex::ReduceMax ( FabArray< FAB > const &  fa,
int  nghost,
F &&  f 
)

◆ ReduceMax() [2/9]

template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
FAB::value_type amrex::ReduceMax ( FabArray< FAB > const &  fa,
IntVect const &  nghost,
F &&  f 
)

◆ ReduceMax() [3/9]

template<class FAB1 , class FAB2 , class FAB3 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type amrex::ReduceMax ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
FabArray< FAB3 > const &  fa3,
int  nghost,
F &&  f 
)

◆ ReduceMax() [4/9]

template<class FAB1 , class FAB2 , class FAB3 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type amrex::ReduceMax ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
FabArray< FAB3 > const &  fa3,
IntVect const &  nghost,
F &&  f 
)

◆ ReduceMax() [5/9]

template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type amrex::ReduceMax ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
int  nghost,
F &&  f 
)

◆ ReduceMax() [6/9]

template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type amrex::ReduceMax ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
IntVect const &  nghost,
F &&  f 
)

◆ ReduceMax() [7/9]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto amrex::ReduceMax ( PC const &  pc,
F &&  f 
) -> decltype(f(typename PC::SuperParticleType()))

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates over all particles on all levels.

This version uses "Max" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceMax() [8/9]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto amrex::ReduceMax ( PC const &  pc,
int  lev,
F &&  f 
) -> decltype(f(typename PC::SuperParticleType()))

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates only on the specified level.

This version uses "Mas" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
levthe level to operate on
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceMax() [9/9]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto amrex::ReduceMax ( PC const &  pc,
int  lev_min,
int  lev_max,
F &&  f 
) -> decltype(f(typename PC::SuperParticleType()))

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates from the specified lev_min to lev_max.

This version uses "Max" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
lev_minthe minimum level to include
lev_maxthe maximum level to include
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceMin() [1/9]

template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
FAB::value_type amrex::ReduceMin ( FabArray< FAB > const &  fa,
int  nghost,
F &&  f 
)

◆ ReduceMin() [2/9]

template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
FAB::value_type amrex::ReduceMin ( FabArray< FAB > const &  fa,
IntVect const &  nghost,
F &&  f 
)

◆ ReduceMin() [3/9]

template<class FAB1 , class FAB2 , class FAB3 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type amrex::ReduceMin ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
FabArray< FAB3 > const &  fa3,
int  nghost,
F &&  f 
)

◆ ReduceMin() [4/9]

template<class FAB1 , class FAB2 , class FAB3 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type amrex::ReduceMin ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
FabArray< FAB3 > const &  fa3,
IntVect const &  nghost,
F &&  f 
)

◆ ReduceMin() [5/9]

template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type amrex::ReduceMin ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
int  nghost,
F &&  f 
)

◆ ReduceMin() [6/9]

template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type amrex::ReduceMin ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
IntVect const &  nghost,
F &&  f 
)

◆ ReduceMin() [7/9]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto amrex::ReduceMin ( PC const &  pc,
F &&  f 
) -> decltype(f(typename PC::SuperParticleType()))

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates over all particles on all levels.

This version uses "Min" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceMin() [8/9]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto amrex::ReduceMin ( PC const &  pc,
int  lev,
F &&  f 
) -> decltype(f(typename PC::SuperParticleType()))

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates only on the specified level.

This version uses "Min" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
levthe level to operate on
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceMin() [9/9]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto amrex::ReduceMin ( PC const &  pc,
int  lev_min,
int  lev_max,
F &&  f 
) -> decltype(f(typename PC::SuperParticleType()))

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates from the specified lev_min to lev_max.

This version uses "Min" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
lev_minthe minimum level to include
lev_maxthe maximum level to include
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceSum() [1/9]

template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
FAB::value_type amrex::ReduceSum ( FabArray< FAB > const &  fa,
int  nghost,
F &&  f 
)

◆ ReduceSum() [2/9]

template<class FAB , class F , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
FAB::value_type amrex::ReduceSum ( FabArray< FAB > const &  fa,
IntVect const &  nghost,
F &&  f 
)

◆ ReduceSum() [3/9]

template<class FAB1 , class FAB2 , class FAB3 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type amrex::ReduceSum ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
FabArray< FAB3 > const &  fa3,
int  nghost,
F &&  f 
)

◆ ReduceSum() [4/9]

template<class FAB1 , class FAB2 , class FAB3 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type amrex::ReduceSum ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
FabArray< FAB3 > const &  fa3,
IntVect const &  nghost,
F &&  f 
)

◆ ReduceSum() [5/9]

template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type amrex::ReduceSum ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
int  nghost,
F &&  f 
)

◆ ReduceSum() [6/9]

template<class FAB1 , class FAB2 , class F , class bar = std::enable_if_t<IsBaseFab<FAB1>::value>>
FAB1::value_type amrex::ReduceSum ( FabArray< FAB1 > const &  fa1,
FabArray< FAB2 > const &  fa2,
IntVect const &  nghost,
F &&  f 
)

◆ ReduceSum() [7/9]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto amrex::ReduceSum ( PC const &  pc,
F &&  f 
) -> decltype(f(typename PC::SuperParticleType()))

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates over all particles on all levels.

This version uses "Sum" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceSum() [8/9]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto amrex::ReduceSum ( PC const &  pc,
int  lev,
F &&  f 
) -> decltype(f(typename PC::SuperParticleType()))

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates only on the specified level.

This version uses "Sum" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
levthe level to operate on
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ ReduceSum() [9/9]

template<class PC , class F , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
auto amrex::ReduceSum ( PC const &  pc,
int  lev_min,
int  lev_max,
F &&  f 
) -> decltype(f(typename PC::SuperParticleType()))

A general reduction method for the particles in a ParticleContainer that can run on either CPUs or GPUs. This version operates from the specified lev_min to lev_max.

This version uses "Sum" as the reduction operation. The quantity reduced over is an arbitrary function of a "superparticle", which contains all the data in the particle type, whether it is stored in AoS or SoA form.

Note that there is no MPI reduction performed at the end of this operation. Users should manually call the MPI reduction operations described in ParallelDescriptor if they want that behavior.

Template Parameters
PCthe ParticleContainer type
Fa function object
Parameters
pcthe ParticleContainer to operate on
lev_minthe minimum level to include
lev_maxthe maximum level to include
fa function that takes a "superparticle" and returns the value to be reduced over all particles.

◆ refine() [1/9]

void amrex::refine ( BoxDomain dest,
const BoxDomain fin,
int  ratio 
)

Refine all Boxes in the domain by the refinement ratio and return the result in dest.

◆ refine() [2/9]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::refine ( const Box b,
const IntVect ref_ratio 
)
noexcept

Refine Box by given (positive) refinement ratio. NOTE: if type(dir) = CELL centered: lo <- lo*ratio and hi <- (hi+1)*ratio - 1. NOTE: if type(dir) = NODE centered: lo <- lo*ratio and hi <- hi*ratio.

◆ refine() [3/9]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::refine ( const Box b,
int  ref_ratio 
)
noexcept

Refine Box by given (positive) refinement ratio. NOTE: if type(dir) = CELL centered: lo <- lo*ratio and hi <- (hi+1)*ratio - 1. NOTE: if type(dir) = NODE centered: lo <- lo*ratio and hi <- hi*ratio.

◆ refine() [4/9]

BoxArray amrex::refine ( const BoxArray ba,
const IntVect ratio 
)

◆ refine() [5/9]

BoxArray amrex::refine ( const BoxArray ba,
int  ratio 
)

◆ refine() [6/9]

BoxList amrex::refine ( const BoxList bl,
int  ratio 
)

Returns a new BoxList in which each Box is refined by the given ratio.

◆ refine() [7/9]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::refine ( Dim3 const &  coarse,
IntVect const &  ratio 
)
noexcept

◆ refine() [8/9]

Geometry amrex::refine ( Geometry const &  crse,
int  rr 
)
inline

◆ refine() [9/9]

Geometry amrex::refine ( Geometry const &  crse,
IntVect const &  rr 
)
inline

◆ reflect()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::reflect ( const IntVect a,
int  ref_ix,
int  idir 
)
noexcept

Returns an IntVect that is the reflection of input in the plane which passes through ref_ix and normal to the coordinate direction idir.

◆ RemoveDuplicates() [1/2]

template<class T >
void amrex::RemoveDuplicates ( Vector< T > &  vec)

◆ RemoveDuplicates() [2/2]

template<class T , class H >
void amrex::RemoveDuplicates ( Vector< T > &  vec)

◆ removeOverlap()

BoxList amrex::removeOverlap ( const BoxList bl)

Return BoxList which covers the same area but has no overlapping boxes.

◆ ResetRandomSeed()

void amrex::ResetRandomSeed ( ULong  seed)

◆ ResetTotalBytesAllocatedInFabsHWM()

void amrex::ResetTotalBytesAllocatedInFabsHWM ( )
noexcept

◆ RestoreRandomState()

void amrex::RestoreRandomState ( std::istream &  is,
int  nthreads_old,
int  nstep_old 
)

◆ SanitizeName()

std::string amrex::SanitizeName ( const std::string &  sname)

◆ SaveRandomState()

void amrex::SaveRandomState ( std::ostream &  os)

Save and restore random state.

◆ scale() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE IntVect amrex::scale ( const IntVect p,
int  s 
)
noexcept

Returns a IntVect obtained by multiplying each of the components of this IntVect by s.

◆ scale() [2/2]

AMREX_GPU_HOST_DEVICE RealVect amrex::scale ( const RealVect p,
Real  s 
)
inlinenoexcept

Returns a RealVect obtained by multiplying each of the components of the given RealVect by a scalar.

◆ second()

double amrex::second ( )
noexcept

Returns wall-clock seconds since start of execution.

◆ selectOrdering()

static const int* amrex::selectOrdering ( int  prec,
int  ordering 
)
static

◆ senseiNewMacro() [1/2]

amrex::senseiNewMacro ( AmrDataAdaptor  )

◆ senseiNewMacro() [2/2]

amrex::senseiNewMacro ( AmrMeshDataAdaptor  )

◆ SerializeStringArray()

amrex::Vector< char > amrex::SerializeStringArray ( const Vector< std::string > &  stringArray)

◆ setBC() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::setBC ( const Box bx,
const Box domain,
const BCRec bc_dom,
BCRec bcr 
)
noexcept

Function for setting a BC.

◆ setBC() [2/2]

void amrex::setBC ( const Box bx,
const Box domain,
int  src_comp,
int  dest_comp,
int  ncomp,
const Vector< BCRec > &  bc_dom,
Vector< BCRec > &  bcr 
)
noexcept

Function for setting array of BCs.

◆ SetErrorHandler()

void amrex::SetErrorHandler ( amrex::ErrorHandler  f)

◆ setFileName()

static void amrex::setFileName ( )
static

◆ setPoutBaseName()

void amrex::setPoutBaseName ( const std::string &  a_Name)

Set the base name for the parallel output files used by pout().

Changes the base part of the filename for pout() files.

If the file has already been used and this is a different name, close the current file and open a new one.

When in parallel, changes the base name of the pout() files. If pout() has already been called, it closes the current output file and opens a new one (unless the name is the same, in which case it does nothing). In serial, ignores the argument and does nothing.

◆ SetVerbose()

void amrex::SetVerbose ( int  v)
noexcept

◆ shift() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::shift ( const Box b,
const IntVect nzones 
)
noexcept

◆ shift() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::shift ( const Box b,
int  dir,
int  nzones 
)
noexcept

Return a Box with indices shifted by nzones in dir direction.

◆ SimpleRemoveOverlap()

void amrex::SimpleRemoveOverlap ( BoxArray ba)

◆ single_task() [1/2]

template<typename L >
void amrex::single_task ( gpuStream_t  stream,
L &&  f 
)
noexcept

◆ single_task() [2/2]

template<typename L >
void amrex::single_task ( L &&  f)
noexcept

◆ SingleLevelToBlueprint() [1/2]

void amrex::SingleLevelToBlueprint ( const MultiFab mf,
const Vector< std::string > &  varnames,
const Geometry geom,
Real  time_value,
int  level_step,
conduit::Node &  bp_mesh 
)

◆ SingleLevelToBlueprint() [2/2]

void amrex::SingleLevelToBlueprint ( const MultiFab mf,
const Vector< std::string > &  varnames,
const Geometry geom,
Real  time_value,
int  level_step,
Node &  res 
)

◆ Sleep()

void amrex::Sleep ( double  sleepsec)

◆ sqrt()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE GpuComplex<T> amrex::sqrt ( const GpuComplex< T > &  a_z)
noexcept

Return the square root of a complex number.

◆ StablePartition() [1/3]

template<typename T , typename F >
int amrex::StablePartition ( Gpu::DeviceVector< T > &  v,
F &&  f 
)

A GPU-capable partition function for contiguous data.

After calling this, all the items for which the predicate is true will be before the items for which the predicate is false in the input array.

This version is stable, meaning that, within each side of the resulting array, order is maintained - if element i was before element j in the input, then it will also be before j in the output. If you don't care about this property, use amrex::Partition instead.

Template Parameters
Ttype of the data to be partitioned.
Ftype of the predicate function.
Parameters
va Gpu::DeviceVector with the data to be partitioned.
fpredicate function that returns 1 or 0 for each input

Returns the index of the first element for which f is 0.

◆ StablePartition() [2/3]

template<typename T , typename F >
int amrex::StablePartition ( T *  data,
int  beg,
int  end,
F &&  f 
)

A GPU-capable partition function for contiguous data.

After calling this, all the items for which the predicate is true will be before the items for which the predicate is false in the input array.

This version is stable, meaning that, within each side of the resulting array, order is maintained - if element i was before element j in the input, then it will also be before j in the output. If you don't care about this property, use amrex::Partition instead.

Template Parameters
Ttype of the data to be partitioned.
Ftype of the predicate function.
Parameters
datapointer to the data to be partitioned
begindex at which to start
endindex at which to stop (exclusive)
fpredicate function that returns 1 or 0 for each input

Returns the index of the first element for which f is 0.

◆ StablePartition() [3/3]

template<typename T , typename F >
int amrex::StablePartition ( T *  data,
int  n,
F &&  f 
)

A GPU-capable partition function for contiguous data.

After calling this, all the items for which the predicate is true will be before the items for which the predicate is false in the input array.

This version is stable, meaning that, within each side of the resulting array, order is maintained - if element i was before element j in the input, then it will also be before j in the output. If you don't care about this property, use amrex::Partition instead.

Template Parameters
Ttype of the data to be partitioned.
Ftype of the predicate function.
Parameters
datapointer to the data to be partitioned
Nthe number of elements in the array
fpredicate function that returns 1 or 0 for each input

Returns the index of the first element for which f is 0.

◆ Subtract() [1/2]

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::Subtract ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src,
int  srccomp,
int  dstcomp,
int  numcomp,
const IntVect nghost 
)

◆ Subtract() [2/2]

template<class FAB , class bar = std::enable_if_t<IsBaseFab<FAB>::value>>
void amrex::Subtract ( FabArray< FAB > &  dst,
FabArray< FAB > const &  src,
int  srccomp,
int  dstcomp,
int  numcomp,
int  nghost 
)

◆ sum_fine_to_coarse()

void amrex::sum_fine_to_coarse ( const MultiFab S_Fine,
MultiFab S_crse,
int  scomp,
int  ncomp,
const IntVect ratio,
const Geometry cgeom,
const Geometry fgeom 
)

Add a coarsened version of the data contained in the S_fine MultiFab to S_crse, including ghost cells.

◆ sumToLine()

Gpu::HostVector< Real > amrex::sumToLine ( MultiFab const &  mf,
int  icomp,
int  ncomp,
Box const &  domain,
int  direction,
bool  local = false 
)

Sum MultiFab data to line.

Return a HostVector that contains the sum of the given MultiFab data in the plane with the given normal direction. The size of the vector is domain.length(direction) x ncomp. The vector is actually a 2D array, where the element for component icomp at spatial index k is at [icomp*ncomp+k].

Parameters
mfMultiFab data for summing
icompstarting component
ncompnumber of components
domainthe domain
directionthe direction of the line
localIf false, reduce across MPI processes.

◆ surroundingNodes() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::surroundingNodes ( const Box b)
noexcept

Returns a Box with NODE based coordinates in all directions that encloses Box b.

◆ surroundingNodes() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::surroundingNodes ( const Box b,
Direction  d 
)
noexcept

◆ surroundingNodes() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Box amrex::surroundingNodes ( const Box b,
int  dir 
)
noexcept

Returns a Box with NODE based coordinates in direction dir that encloses Box b. NOTE: equivalent to b.convert(dir,NODE) NOTE: error if b.type(dir) == NODE.

◆ Swap()

template<typename T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::Swap ( T &  t1,
T &  t2 
)
noexcept

◆ swapBytes() [1/6]

std::int16_t amrex::swapBytes ( std::int16_t  val)

◆ swapBytes() [2/6]

std::int32_t amrex::swapBytes ( std::int32_t  val)

◆ swapBytes() [3/6]

std::int64_t amrex::swapBytes ( std::int64_t  val)

◆ swapBytes() [4/6]

std::uint16_t amrex::swapBytes ( std::uint16_t  val)

◆ swapBytes() [5/6]

std::uint32_t amrex::swapBytes ( std::uint32_t  val)

◆ swapBytes() [6/6]

std::uint64_t amrex::swapBytes ( std::uint64_t  val)

◆ swapParticle()

template<int NSR, int NSI, int NAR, int NAI>
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::swapParticle ( const ParticleTileData< NSR, NSI, NAR, NAI > &  dst,
const ParticleTileData< NSR, NSI, NAR, NAI > &  src,
int  src_i,
int  dst_i 
)
noexcept

A general single particle swapping routine that can run on the GPU.

Template Parameters
NSRnumber of extra reals in the particle struct
NSInumber of extra ints in the particle struct
NARnumber of reals in the struct-of-arrays
NAInumber of ints in the struct-of-arrays
Parameters
dstthe destination tile
srcthe source tile
src_ithe index in the source to read from
dst_ithe index in the destination to write to

◆ SyncStrings()

void amrex::SyncStrings ( const Vector< std::string > &  localStrings,
Vector< std::string > &  syncedStrings,
bool &  alreadySynced 
)

◆ TagCutCells()

void amrex::TagCutCells ( TagBoxArray tags,
const MultiFab state 
)

◆ TagVolfrac()

void amrex::TagVolfrac ( TagBoxArray tags,
const MultiFab volfrac,
Real  tol 
)

◆ The_Arena()

Arena * amrex::The_Arena ( )

◆ The_Async_Arena()

Arena * amrex::The_Async_Arena ( )

◆ The_Cpu_Arena()

Arena * amrex::The_Cpu_Arena ( )

◆ The_Device_Arena()

Arena * amrex::The_Device_Arena ( )

◆ The_FA_Arena()

Arena* amrex::The_FA_Arena ( )

◆ The_Managed_Arena()

Arena * amrex::The_Managed_Arena ( )

◆ The_Pinned_Arena()

Arena * amrex::The_Pinned_Arena ( )

◆ Tie()

template<typename... Args>
constexpr AMREX_GPU_HOST_DEVICE GpuTuple<Args&...> amrex::Tie ( Args &...  args)
constexprnoexcept

◆ TilingIfNotGPU()

bool amrex::TilingIfNotGPU ( )
inlinenoexcept

◆ ToArray4()

template<class Tto , class Tfrom >
AMREX_GPU_HOST_DEVICE Array4<Tto> amrex::ToArray4 ( Array4< Tfrom > const &  a_in)
noexcept

◆ Tokenize()

const std::vector< std::string > & amrex::Tokenize ( const std::string &  instr,
const std::string &  separators 
)

Splits "instr" into separate pieces based on "separators".

◆ ToLongMultiFab()

FabArray< BaseFab< Long > > amrex::ToLongMultiFab ( const iMultiFab imf)

Convert iMultiFab to Long.

◆ toLower()

std::string amrex::toLower ( std::string  s)

Converts all characters of the string into lower or uppercase based on std::locale.

◆ ToMultiFab()

MultiFab amrex::ToMultiFab ( const iMultiFab imf)

Convert iMultiFab to MultiFab.

◆ TotalBytesAllocatedInFabs()

Long amrex::TotalBytesAllocatedInFabs ( )
noexcept

◆ TotalBytesAllocatedInFabsHWM()

Long amrex::TotalBytesAllocatedInFabsHWM ( )
noexcept

◆ TotalCellsAllocatedInFabs()

Long amrex::TotalCellsAllocatedInFabs ( )
noexcept

◆ TotalCellsAllocatedInFabsHWM()

Long amrex::TotalCellsAllocatedInFabsHWM ( )
noexcept

◆ toUpper()

std::string amrex::toUpper ( std::string  s)

◆ transformParticles() [1/4]

template<typename DstTile , typename SrcTile , typename F >
void amrex::transformParticles ( DstTile &  dst,
const SrcTile &  src,
F &&  f 
)
noexcept

Apply the function f to all the particles in src, writing the result to dst. This version does all the particles in src.

Template Parameters
DstTilethe dst particle tile type
SrcTilethe src particle tile type
Fa function object
Parameters
dstthe destination tile
srcthe source tile
fthe function that will be applied to each particle

◆ transformParticles() [2/4]

template<typename DstTile , typename SrcTile , typename Index , typename N , typename F , std::enable_if_t< std::is_integral< Index >::value, int > foo = 0>
void amrex::transformParticles ( DstTile &  dst,
const SrcTile &  src,
Index  src_start,
Index  dst_start,
n,
F &&  f 
)
noexcept

Apply the function f to particles in src, writing the result to dst. This version applies the function to n particles starting at index src_start, writing the result starting at dst_start.

Template Parameters
DstTilethe dst particle tile type
SrcTilethe src particle tile type
Indexthe index type, e.g. unsigned int
Nthe size type, e.g. Long
Fa function object
Parameters
dstthe destination tile
srcthe source tile
src_startthe offset at which to start reading particles from src
dst_startthe offset at which to start writing particles to dst
fthe function that will be applied to each particle

◆ transformParticles() [3/4]

template<typename DstTile1 , typename DstTile2 , typename SrcTile , typename F >
void amrex::transformParticles ( DstTile1 &  dst1,
DstTile2 &  dst2,
const SrcTile &  src,
F &&  f 
)
noexcept

Apply the function f to all the particles in src, writing the results to dst1 and dst2. This version does all the particles in src.

Template Parameters
DstTile1the dst1 particle tile type
DstTile2the dst2 particle tile type
SrcTilethe src particle tile type
Fa function object
Parameters
dst1the first destination tile
dst2the second destination tile
srcthe source tile
fthe function that will be applied to each particle

◆ transformParticles() [4/4]

template<typename DstTile1 , typename DstTile2 , typename SrcTile , typename Index , typename N , typename F , std::enable_if_t< std::is_integral< Index >::value, int > foo = 0>
void amrex::transformParticles ( DstTile1 &  dst1,
DstTile2 &  dst2,
const SrcTile &  src,
Index  src_start,
Index  dst1_start,
Index  dst2_start,
n,
F &&  f 
)
noexcept

Apply the function f to particles in src, writing the results to dst1 and dst2. This version applies the function to n particles starting at index src_start, writing the result starting at dst1_start and dst2_start.

Template Parameters
DstTile1the dst1 particle tile type
DstTile2the dst2 particle tile type
SrcTilethe src particle tile type
Indexthe index type, e.g. unsigned int
Nthe size type, e.g. Long
Fa function object
Parameters
dst1the first destination tile
dst2the second destination tile
srcthe source tile
src_startthe offset at which to start reading particles from src
dst1_startthe offset at which to start writing particles to dst1
dst2_startthe offset at which to start writing particles to dst2
fthe function that will be applied to each particle

◆ tridiagonal_solve()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::tridiagonal_solve ( Array1D< Real, 0, 31 > &  a_ls,
Array1D< Real, 0, 31 > &  b_ls,
Array1D< Real, 0, 31 > &  c_ls,
Array1D< Real, 0, 31 > &  r_ls,
Array1D< Real, 0, 31 > &  u_ls,
Array1D< Real, 0, 31 > &  gam,
int  ilen 
)
noexcept

◆ trim()

std::string amrex::trim ( std::string  s,
std::string const &  space = " \t" 
)

Trim leading and trailing white space.

◆ TupleCat() [1/3]

template<typename TP >
constexpr AMREX_GPU_HOST_DEVICE auto amrex::TupleCat ( TP &&  a) -> typename detail::tuple_cat_result<detail::tuple_decay_t<TP> >::type
constexpr

◆ TupleCat() [2/3]

template<typename TP1 , typename TP2 >
constexpr AMREX_GPU_HOST_DEVICE auto amrex::TupleCat ( TP1 &&  a,
TP2 &&  b 
) -> typename detail::tuple_cat_result<detail::tuple_decay_t<TP1>, detail::tuple_decay_t<TP2> >::type
constexpr

◆ TupleCat() [3/3]

template<typename TP1 , typename TP2 , typename... TPs>
constexpr AMREX_GPU_HOST_DEVICE auto amrex::TupleCat ( TP1 &&  a,
TP2 &&  b,
TPs &&...  args 
) -> typename detail::tuple_cat_result<detail::tuple_decay_t<TP1>, detail::tuple_decay_t<TP2>, detail::tuple_decay_t<TPs>...>::type
constexpr

◆ ubound() [1/2]

template<class T >
AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::ubound ( Array4< T > const &  a)
noexcept

◆ ubound() [2/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE Dim3 amrex::ubound ( Box const &  box)
noexcept

◆ UniqueRandomSubset()

void amrex::UniqueRandomSubset ( Vector< int > &  uSet,
int  setSize,
int  poolSize,
bool  printSet = false 
)

Create a unique subset of random numbers from a pool of integers in the range [0, poolSize - 1] the set will be in the order they are found setSize must be <= poolSize uSet will be resized to setSize if you want all processors to have the same set, call this on one processor and broadcast the array.

◆ UniqueString()

std::string amrex::UniqueString ( )

Create a (probably) unique string.

◆ unpackBuffer()

template<class PC , class Buffer , class UnpackPolicy , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void amrex::unpackBuffer ( PC &  pc,
const ParticleCopyPlan plan,
const Buffer &  snd_buffer,
const UnpackPolicy &&  policy 
)

◆ unpackRemotes()

template<class PC , class Buffer , class UnpackPolicy , std::enable_if_t< IsParticleContainer< PC >::value, int > foo = 0>
void amrex::unpackRemotes ( PC &  pc,
const ParticleCopyPlan plan,
Buffer &  rcv_buffer,
UnpackPolicy &&  policy 
)

◆ UnSerializeStringArray()

amrex::Vector< std::string > amrex::UnSerializeStringArray ( const Vector< char > &  charArray)

◆ unused_table_entries_q()

static bool amrex::unused_table_entries_q ( const ParmParse::Table table,
const std::string &  prefix = std::string() 
)
static

◆ update_fab_stats() [1/2]

void amrex::update_fab_stats ( Long  n,
Long  s,
size_t  szt 
)
noexcept

◆ update_fab_stats() [2/2]

void amrex::update_fab_stats ( Long  n,
Long  s,
std::size_t  szt 
)
noexcept

◆ UtilCreateCleanDirectory()

void amrex::UtilCreateCleanDirectory ( const std::string &  path,
bool  callbarrier = true 
)

Create a new directory, renaming the old one if it exists.

◆ UtilCreateDirectory()

bool amrex::UtilCreateDirectory ( const std::string &  path,
mode_t  mode,
bool  verbose = false 
)

Creates the specified directories. path may be either a full pathname or a relative pathname. It will create all the directories in the pathname, if they don't already exist, so that on successful return the pathname refers to an existing directory. Returns true or false depending upon whether or not it was successful. Also returns true if path is NULL or "/". mode is the mode passed to mkdir() for any directories that must be created (for example: 0755). verbose will print out the directory creation steps.

For example, if it is passed the string "/a/b/c/d/e/f/g", it will return successfully when all the directories in the pathname exist; i.e. when the full pathname is a valid directory.

In a Windows environment, the path separator is a '\', so that if using the example given above you must pass the string "\\a\\b\\c\\d\\e\\f\\g" (Note that you must escape the backslash in a character string),

Only the last mkdir return value is checked for success as errno may not be set to EEXIST if a directory exists but mkdir has other reasons to fail such as part of the path being a read-only filesystem (EROFS). If this function fails, it will print out an error stack.

◆ UtilCreateDirectoryDestructive()

void amrex::UtilCreateDirectoryDestructive ( const std::string &  path,
bool  callbarrier = true 
)

Create a new directory, removing old one if it exists. This will only work on unix systems, as it has a system call.

◆ UtilRenameDirectoryToOld()

void amrex::UtilRenameDirectoryToOld ( const std::string &  path,
bool  callbarrier = true 
)

Rename a current directory if it exists.

◆ Verbose()

int amrex::Verbose ( )
noexcept

◆ Version()

std::string amrex::Version ( )

◆ VisMFBaseName()

std::string amrex::VisMFBaseName ( const std::string &  filename)

◆ VisMFWrite()

VisMF::FabOnDisk amrex::VisMFWrite ( const FArrayBox fabIn,
const std::string &  filename,
std::ostream &  os,
long &  bytes,
int  whichPlane 
)

◆ VisMFWriteHeader()

long amrex::VisMFWriteHeader ( const std::string &  mf_name,
VisMF::Header hdr,
int  whichPlane 
)

◆ Warning() [1/2]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::Warning ( const char *  msg)

◆ Warning() [2/2]

void amrex::Warning ( const std::string &  msg)

Print out warning message to cerr.

◆ Warning_host()

void amrex::Warning_host ( const char *  msg)

◆ Write2DBoxFrom3D()

void amrex::Write2DBoxFrom3D ( const Box box,
std::ostream &  os,
int  whichPlane 
)

◆ Write2DFab()

void amrex::Write2DFab ( const string &  filenameprefix,
const int  xdim,
const int  ydim,
const double *  data 
)

◆ Write2DText()

void amrex::Write2DText ( const string &  filenameprefix,
const int  xdim,
const int  ydim,
const double *  data 
)

◆ Write3DFab()

void amrex::Write3DFab ( const string &  filenameprefix,
const int  xdim,
const int  ydim,
const int  zdim,
const double *  data 
)

◆ write_to_stderr_without_buffering()

void amrex::write_to_stderr_without_buffering ( const char *  str)

This is used by amrex::Error(), amrex::Abort(), and amrex::Assert() to ensure that when writing the message to stderr, that no additional heap-based memory is allocated.

◆ WriteBlueprintFiles()

void amrex::WriteBlueprintFiles ( const conduit::Node &  bp_mesh,
const std::string &  fname_base,
int  step,
const std::string &  protocol 
)

◆ writeData() [1/4]

void amrex::writeData ( double const *  data,
std::size_t  size,
std::ostream &  os 
)
inline

◆ writeData() [2/4]

void amrex::writeData ( float const *  data,
std::size_t  size,
std::ostream &  os 
)
inline

◆ writeData() [3/4]

void amrex::writeData ( int const *  data,
std::size_t  size,
std::ostream &  os 
)
inline

◆ writeData() [4/4]

void amrex::writeData ( Long const *  data,
std::size_t  size,
std::ostream &  os 
)
inline

◆ writeDoubleData()

void amrex::writeDoubleData ( const double *  data,
std::size_t  size,
std::ostream &  os,
const RealDescriptor rd = FPC::Native64RealDescriptor() 
)

Write double data to the ostream. The arguments are a pointer to data to write, the size of the data buffer, the ostream, and an optional RealDescriptor that describes the data format to use for writing. If no RealDescriptor is provided, the data will be written using the native format for your machine.

◆ WriteEBSurface()

void amrex::WriteEBSurface ( const BoxArray ba,
const DistributionMapping dmap,
const Geometry geom,
const EBFArrayBoxFactory ebf 
)

◆ WriteFab()

void amrex::WriteFab ( const string &  filenameprefix,
const int  xdim,
const int  ydim,
const double *  data 
)

◆ writeFabs() [1/2]

void amrex::writeFabs ( const MultiFab mf,
const std::string &  name 
)

Write each fab individually.

◆ writeFabs() [2/2]

void amrex::writeFabs ( const MultiFab mf,
int  comp,
int  ncomp,
const std::string &  name 
)

◆ writeFloatData()

void amrex::writeFloatData ( const float *  data,
std::size_t  size,
std::ostream &  os,
const RealDescriptor rd = FPC::Native32RealDescriptor() 
)

Write float data to the ostream. The arguments are a pointer to data to write, the size of the data buffer, the ostream, and an optional RealDescriptor that describes the data format to use for writing. If no RealDescriptor is provided, the data will be written using the native format for your machine.

◆ WriteGenericPlotfileHeader()

void amrex::WriteGenericPlotfileHeader ( std::ostream &  HeaderFile,
int  nlevels,
const Vector< BoxArray > &  bArray,
const Vector< std::string > &  varnames,
const Vector< Geometry > &  geom,
Real  time,
const Vector< int > &  level_steps,
const Vector< IntVect > &  ref_ratio,
const std::string &  versionName = "HyperCLaw-V1.1",
const std::string &  levelPrefix = "Level_",
const std::string &  mfPrefix = "Cell" 
)

write a generic plot file header to the file plotfilename/Header the plotfilename directory must already exist

◆ writeIntData() [1/2]

template<typename To , typename From >
void amrex::writeIntData ( const From *  data,
std::size_t  size,
std::ostream &  os,
const amrex::IntDescriptor id 
)

◆ writeIntData() [2/2]

void amrex::writeIntData ( const int data,
std::size_t  size,
std::ostream &  os,
const IntDescriptor id = FPC::NativeIntDescriptor() 
)

Functions for writing integer data to disk in a portable, self-describing manner.

Write int data to the ostream. The arguments are a pointer to data to write, the size of the data buffer, the ostream, and an optional IntDescriptor that describes the data format to use for writing. If no IntDescriptor is provided, the data will be written using the native format for your machine.

◆ writeLongData()

void amrex::writeLongData ( const Long *  data,
std::size_t  size,
std::ostream &  os,
const IntDescriptor id = FPC::NativeLongDescriptor() 
)

Write long data to the ostream. The arguments are a pointer to data to write, the size of the data buffer, the ostream, and an optional IntDescriptor that describes the data format to use for writing. If no IntDescriptor is provided, the data will be written using the native format for your machine.

◆ WriteMLMF()

void amrex::WriteMLMF ( const std::string &  plotfilename,
const Vector< const MultiFab * > &  mf,
const Vector< Geometry > &  geom 
)

write a plotfile to disk given: -plotfile name -vector of MultiFabs -vector of Geometrys variable names are written as "Var0", "Var1", etc. refinement ratio is computed from the Geometry vector "time" and "level_steps" are set to zero

Parameters
&plotfilename
mf
&geom

◆ WriteMultiLevelPlotfile()

void amrex::WriteMultiLevelPlotfile ( const std::string &  plotfilename,
int  nlevels,
const Vector< const MultiFab * > &  mf,
const Vector< std::string > &  varnames,
const Vector< Geometry > &  geom,
Real  time,
const Vector< int > &  level_steps,
const Vector< IntVect > &  ref_ratio,
const std::string &  versionName,
const std::string &  levelPrefix,
const std::string &  mfPrefix,
const Vector< std::string > &  extra_dirs 
)

◆ WriteMultiLevelPlotfileHeaders()

void amrex::WriteMultiLevelPlotfileHeaders ( const std::string &  plotfilename,
int  nlevels,
const Vector< const MultiFab * > &  mf,
const Vector< std::string > &  varnames,
const Vector< Geometry > &  geom,
Real  time,
const Vector< int > &  level_steps,
const Vector< IntVect > &  ref_ratio,
const std::string &  versionName,
const std::string &  levelPrefix,
const std::string &  mfPrefix,
const Vector< std::string > &  extra_dirs 
)

◆ WritePlotfile()

void amrex::WritePlotfile ( const std::string &  pfversion,
const Vector< MultiFab > &  data,
const Real  time,
const Vector< Real > &  probLo,
const Vector< Real > &  probHi,
const Vector< int > &  refRatio,
const Vector< Box > &  probDomain,
const Vector< Vector< Real > > &  dxLevel,
const int  coordSys,
const std::string &  oFile,
const Vector< std::string > &  names,
const bool  verbose,
const bool  isCartGrid,
const Real *  vfeps,
const int levelSteps 
)

◆ WritePlotfile2DFrom3D()

void amrex::WritePlotfile2DFrom3D ( const std::string &  pfversion,
const Vector< MultiFab > &  data,
const Real  time,
const Vector< Real > &  probLo,
const Vector< Real > &  probHi,
const Vector< int > &  refRatio,
const Vector< Box > &  probDomain,
const Vector< Vector< Real > > &  dxLevel,
const int  coordSys,
const std::string &  oFile,
const Vector< std::string > &  names,
const bool  verbose,
const bool  isCartGrid,
const Real *  vfeps,
const int levelSteps 
)

◆ writeRealData()

void amrex::writeRealData ( const Real *  data,
std::size_t  size,
std::ostream &  os,
const RealDescriptor rd = FPC::NativeRealDescriptor() 
)

Write Real data to the ostream. The arguments are a pointer to data to write, the size of the data buffer, the ostream, and an optional RealDescriptor that describes the data format to use for writing. If no RealDescriptor is provided, the data will be written using the native format for your machine.

◆ WriteSingleLevelPlotfile()

void amrex::WriteSingleLevelPlotfile ( const std::string &  plotfilename,
const MultiFab mf,
const Vector< std::string > &  varnames,
const Geometry geom,
Real  time,
int  level_step,
const std::string &  versionName,
const std::string &  levelPrefix,
const std::string &  mfPrefix,
const Vector< std::string > &  extra_dirs 
)

◆ yafluxreg_crseadd() [1/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::yafluxreg_crseadd ( Box const &  bx,
Array4< Real > const &  d,
Array4< int const > const &  flag,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
Array4< Real const > const &  fz,
Real  dtdx,
Real  dtdy,
Real  dtdz,
int  nc 
)
noexcept

◆ yafluxreg_crseadd() [2/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::yafluxreg_crseadd ( Box const &  bx,
Array4< Real > const &  d,
Array4< int const > const &  flag,
Array4< Real const > const &  fx,
Array4< Real const > const &  fy,
Real  dtdx,
Real  dtdy,
int  nc 
)
noexcept

◆ yafluxreg_crseadd() [3/3]

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::yafluxreg_crseadd ( Box const &  bx,
Array4< Real > const &  d,
Array4< int const > const &  flag,
Array4< Real const > const &  fx,
Real  dtdx,
int  nc 
)
noexcept

◆ yafluxreg_fineadd()

AMREX_GPU_HOST_DEVICE AMREX_FORCE_INLINE void amrex::yafluxreg_fineadd ( Box const &  bx,
Array4< Real > const &  d,
Array4< Real const > const &  f,
Real  dtdx,
int  nc,
int  dirside,
Dim3 const &  rr 
)
noexcept

Variable Documentation

◆ atomic_total_bytes_allocated_in_fabs

std::atomic< Long > amrex::atomic_total_bytes_allocated_in_fabs {0L}

◆ atomic_total_bytes_allocated_in_fabs_hwm

std::atomic< Long > amrex::atomic_total_bytes_allocated_in_fabs_hwm {0L}

◆ atomic_total_cells_allocated_in_fabs

std::atomic< Long > amrex::atomic_total_cells_allocated_in_fabs {0L}

◆ atomic_total_cells_allocated_in_fabs_hwm

std::atomic< Long > amrex::atomic_total_cells_allocated_in_fabs_hwm {0L}

◆ BitsMax

const int amrex::BitsMax = 8*sizeof(Long)

◆ cell_bilinear_interp

AMREX_EXPORT CellBilinear amrex::cell_bilinear_interp

◆ cell_cons_interp

AMREX_EXPORT CellConservativeLinear amrex::cell_cons_interp

◆ eb_cell_cons_interp

AMREX_EXPORT EBCellConservativeLinear amrex::eb_cell_cons_interp

◆ eb_lincc_interp

AMREX_EXPORT EBCellConservativeLinear amrex::eb_lincc_interp

◆ eb_mf_cell_cons_interp

AMREX_EXPORT EBMFCellConsLinInterp amrex::eb_mf_cell_cons_interp

◆ eb_mf_lincc_interp

AMREX_EXPORT EBMFCellConsLinInterp amrex::eb_mf_lincc_interp

◆ err_name

const char* amrex::err_name[] = { "Special", "Standard", "UseAverage" }
static

◆ FabFileSuffix

const char* amrex::FabFileSuffix = "_D_"
static

◆ face_divfree_interp

AMREX_EXPORT FaceDivFree amrex::face_divfree_interp

◆ face_linear_interp

AMREX_EXPORT FaceLinear amrex::face_linear_interp

◆ finalize_verbose

bool amrex::finalize_verbose = true
static

◆ gcc_map_node_extra_bytes

const Long amrex::gcc_map_node_extra_bytes = 32L
static

◆ gpu_rand_state

randState_t * amrex::gpu_rand_state = nullptr

◆ gpuSuccess

constexpr gpuError_t amrex::gpuSuccess = cudaSuccess
constexpr

◆ initialized

bool amrex::initialized = false

◆ int

const amrex::int[]

◆ INVALID_TIME

constexpr Real amrex::INVALID_TIME = -1.0e200_rt
staticconstexpr

◆ iparser_root

struct iparser_node* amrex::iparser_root = nullptr
static

◆ lincc_interp

AMREX_EXPORT CellConservativeLinear amrex::lincc_interp

◆ max_efficiency

Real amrex::max_efficiency

◆ mf_cell_bilinear_interp

AMREX_EXPORT MFCellBilinear amrex::mf_cell_bilinear_interp

◆ mf_cell_cons_interp

AMREX_EXPORT MFCellConsLinInterp amrex::mf_cell_cons_interp

◆ mf_lincc_interp

AMREX_EXPORT MFCellConsLinInterp amrex::mf_lincc_interp

◆ mf_node_bilinear_interp

AMREX_EXPORT MFNodeBilinear amrex::mf_node_bilinear_interp

◆ mf_pc_interp

AMREX_EXPORT MFPCInterp amrex::mf_pc_interp

◆ MFNEWDATA

constexpr int amrex::MFNEWDATA = 0
staticconstexpr

◆ MFOLDDATA

constexpr int amrex::MFOLDDATA = 1
staticconstexpr

◆ node_bilinear_interp

AMREX_EXPORT NodeBilinear amrex::node_bilinear_interp

◆ node_size

int amrex::node_size

◆ parser_root

struct parser_node* amrex::parser_root = nullptr
static

◆ pc_interp

AMREX_EXPORT PCInterp amrex::pc_interp

CONSTRUCT A GLOBAL OBJECT OF EACH VERSION.

◆ private_total_bytes_allocated_in_fabs

Long amrex::private_total_bytes_allocated_in_fabs = 0L

total bytes at any given time

◆ private_total_bytes_allocated_in_fabs_hwm

Long amrex::private_total_bytes_allocated_in_fabs_hwm = 0L

high-water-mark over a given interval

◆ private_total_cells_allocated_in_fabs

Long amrex::private_total_cells_allocated_in_fabs = 0L

total cells at any given time

◆ private_total_cells_allocated_in_fabs_hwm

Long amrex::private_total_cells_allocated_in_fabs_hwm = 0L

high-water-mark over a given interval

◆ protected_interp

AMREX_EXPORT CellConservativeProtected amrex::protected_interp

◆ quadratic_interp

AMREX_EXPORT CellQuadratic amrex::quadratic_interp

◆ quartic_interp

AMREX_EXPORT CellConservativeQuartic amrex::quartic_interp

◆ REVERSE_ORDER

const int amrex::REVERSE_ORDER = 2

◆ s_pout

std::ofstream amrex::s_pout
static

◆ s_pout_basename

std::string amrex::s_pout_basename
static

◆ s_pout_filename

std::string amrex::s_pout_filename
static

◆ s_pout_init

bool amrex::s_pout_init = false
static

◆ s_pout_open

bool amrex::s_pout_open = false
static

◆ sfc_threshold

int amrex::sfc_threshold

◆ sys_name

const char amrex::sys_name[] = "IEEE"
static

◆ TheFabOnDiskPrefix

const char* amrex::TheFabOnDiskPrefix = "FabOnDisk:"
static

◆ TheMultiFabHdrFileSuffix

const char* amrex::TheMultiFabHdrFileSuffix = "_H"
static

◆ verbose

int amrex::verbose